Swing之JTable篇综合例子,在表中插入一行记录,对表列排序等

通过实现AbstractTableModel接口实现即使向表中增加一行记录 
import java.awt.BorderLayout;   
import java.awt.Point;   
import java.awt.event.ActionEvent;   
import java.awt.event.ActionListener;   
import java.awt.event.ComponentAdapter;   
import java.awt.event.ComponentEvent;   
import java.util.Vector;   
  
import javax.swing.JFrame;   
import javax.swing.JScrollPane;   
import javax.swing.JTable;   
import javax.swing.JTextField;   
import javax.swing.JViewport;   
import javax.swing.SwingUtilities;   
import javax.swing.table.AbstractTableModel;   
  
public class RowAdder extends JFrame {   
  
  final SimpleModel tableData = new SimpleModel();   
  JTable table = new JTable(tableData);   
  
  public static void main(String[] args) {   
    RowAdder ra = new RowAdder();   
    ra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   
    ra.setSize(400, 300);   
    ra.setVisible(true);   
  }   
  
  public RowAdder() {   
    final JTextField textField  = new JTextField();   
    setLayout(new BorderLayout());   
    add(new JScrollPane(table), BorderLayout.CENTER);   
    textField.addActionListener(new ActionListener() {   
      public void actionPerformed(ActionEvent event) {   
        tableData.addText(textField.getText());   
        textField.setText("");   
      }   
    });   
    add(textField, BorderLayout.SOUTH);   
  }   
  
}   
class SimpleModel extends AbstractTableModel {   
  
  Vector textData = new Vector();   
  
  public void addText(String text) {   
    textData.addElement(text);   
    fireTableDataChanged();   
  }   
  
  public int getRowCount() {   
    return textData.size();   
  }   
  
  public int getColumnCount() {   
    return 3;   
  }   
  
  public Object getValueAt(int row, int column) {   
    return textData.elementAt(row);   
  }   
  
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值