【发布时间】:2016-08-01 19:54:43
【问题描述】:
我有带有行和列的 JTable, 当我编辑索引为 4 的列中的任何单元格时,我需要 -> 应该更改同一行中的“VALUE”,但下一列索引为 5。 我有下一个代码,但它不起作用
table.getModel().addTableModelListener(new TableModelListener() {
public void tableChanged(TableModelEvent e) {
if (table.getSelectedRow()>=0) {
try {
if (table.getSelectedColumn()==4){
table.setValueAt("VALUE", 0, 0);
}
} catch (ArrayIndexOutOfBoundsException ee){
ee.printStackTrace();
}
}
}
});
它有一个错误:
在 MainFrame$3.tableChanged(MainFrame.java:188) 在 javax.swing.table.AbstractTableModel.fireTableChanged(未知来源) 在 javax.swing.table.AbstractTableModel.fireTableCellUpdated(未知 来源)在 javax.swing.table.DefaultTableModel.setValueAt(Unknown 来源)在 javax.swing.JTable.setValueAt(未知来源)
因为它有无限循环。 请帮帮我。
【问题讨论】:
-
我不明白你的问题。你能编辑得更清楚吗?
-
为了获得更好的帮助,请尽快发布 MCVE / SSCCE,简短、可运行、可编译,并在局部变量中为 JTable / XxxTableModel 提供硬编码值
标签: java swing jtable listener tablemodel