【发布时间】:2013-04-07 21:41:25
【问题描述】:
我发现的例子: http://www.java2s.com/Code/Java/Swing-Components/ButtonTableExample.htm 展示如何创建具有指定列(按钮)的 JTable。它工作正常,但我的问题是,我需要使用 AbstractTableModel 而不是 DefaultTableModel(如示例所示)。
所以我创建了自己的 TableModel,它扩展了 AbstractTableModel:
public class TableModel extends AbstractTableModel {
//..
}
并替换:
DefaultTableModel dm = new DefaultTableModel();
dm.setDataVector(new Object[][] { { "button 1", "foo" },
{ "button 2", "bar" } }, new Object[] { "Button", "String" });
JTable table = new JTable(dm);
为:
JTable table = new JTable(new TableModel());
然后什么都没有发生,当我单击某行的按钮时。有什么建议吗?
【问题讨论】:
-
that i need to use AbstractTableModel instead of DefaultTableModel请问为什么,有什么特殊的理由来限制某些东西,覆盖直接在DeafultTableModel,1.中作为方法实现的任何内容,这里有一堆关于如何编写 AbstractTableModel,@987654328 的问答@鼠标点击你问题下的AbstractTableModel标签,3.搜索Java & Swing & JTable & AbstractTableModel,4.阅读Oracle教程如何使用表格
标签: java swing tablecelleditor abstracttablemodel