JTable 中的列不更新

发布于 2024-12-11 09:11:30 字数 680 浏览 0 评论 0原文

我将 JTable 与 AbstractTableModel 一起使用:

_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() 仅显示对行的更改。列与以前完全相同。有没有办法强制更新整个表?

I'm using a JTable with AbstractTableModel:

_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);
            }
        };

When rows and columns change, calling table.revalidate() only shows changes to rows. Columns are exactly the same as before. Is there a way to force update for the whole table?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

会发光的星星闪亮亮i 2024-12-18 09:11:30

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

If you change columns you should call fireTableStructureChanged on the model.

看海 2024-12-18 09:11:30

不应该是这样吗

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

shouldn't it be

   @Override
                public Object getValueAt(int row, int col) {
                    return _data.get[row][col];
                }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文