在模型中插入,删除或更新数据时,需要将更改通知GUI。你可以用做 火
的-方法
AbstractTableModel。
即,如果将元素添加到列表中,则还必须调用
fireTableRowsInserted(int firstRow, int lastRow)以便更新可见层。
看看
addElement(MyElement e)下面的代码:
public class MyModel extends AbstractTableModel { private static final String[] columnNames = {"column 1", "column 2"}; private final linkedList<MyElement> list; private MyModel() { list = new linkedList<MyElement>(); } public void addElement(MyElement e) { // Adds the element in the last position in the list list.add(e); fireTableRowsInserted(list.size()-1, list.size()-1); } @Override public int getColumnCount() { return columnNames.length; } @Override public int getRowCount() { return list.size(); } @Override public Object getValueAt(int rowIndex, int columnIndex) { switch(columnIndex) { case 0: return list.get(rowIndex).getColumnOne(); case 1: return list.get(rowIndex).getColumnOne(); } return null; }}


