列不会在JTable中更新

时间:2011-10-24 17:01:09

标签: java swing jtable

我正在使用带有AbstractTableModel的JTable:

_model = new AbstractTableModel() {

            @Override
            public int getColumnCount() {
                return _columns.size();
            }
            @Override
            public int getRowCount() {
                return _data.size();
            }
            @Override
            public Object getValueAt(int row, int col) {
                return _data.get(row)[col];
            }

            @Override
            public String getColumnName(int i) {
                return _columns.get(i);
            }
        };

当行和列更改时,调用table.revalidate()仅显示对行的更改。列与以前完全相同。有没有办法强制更新整个表?

2 个答案:

答案 0 :(得分:2)

如果您更改了列,则应在模型上调用fireTableStructureChanged

答案 1 :(得分:0)

不应该是

   @Override
                public Object getValueAt(int row, int col) {
                    return _data.get[row][col];
                }