首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能将org.jdesktop.swingbinding.JTableBinding$BindingTableModel转换为javax.swing.table.DefaultTableModel

不能将org.jdesktop.swingbinding.JTableBinding$BindingTableModel转换为javax.swing.table.DefaultTableModel
EN

Stack Overflow用户
提问于 2012-04-12 21:08:48
回答 2查看 2.8K关注 0票数 1

我试图对JTable头进行分组,为此,我想获得当前JTable的DefaultTableModel。但是当我试图像这样检索表模型时:

代码语言:javascript
复制
DefaultTableModel dm=(DefaultTableModel) tblTet.getModel();

它显示了以下异常:

不能将org.jdesktop.swingbinding.JTableBinding$BindingTableModel转换为javax.swing.table.DefaultTableModel

因为我使用的是JTableBeansBinding。

有人知道如何解决这个问题(用于检索DefaultTableModel)吗?

EN

回答 2

Stack Overflow用户

发布于 2012-04-12 21:19:33

根据JavaDoc for BindingTableModel,这个类不扩展DefaultTableModel。相反,它实现了TableModel接口。这意味着不能强制转换为DefaultTableModel,而只能转换为TableModel:

代码语言:javascript
复制
TableModel dm=(TableModel) tblTet.getModel();
票数 3
EN

Stack Overflow用户

发布于 2013-02-08 05:39:33

你必须像这样创建你的桌子:

代码语言:javascript
复制
    String[] columnNames = {"Row",
            "Category",
            "From Date",
            "From Time",
            "To Date",
            "To Time",
            "Description",
            "Doc"};
    Object[][] data = {};//Table Rows

   table.setModel(new DefaultTableModel(data,columnNames));

而不是:

代码语言:javascript
复制
   table=new JTable(data,columnNames);

然后,您可以将表模型转换为defaultTableModel。

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10131878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档