0
我正在使用JTable和DefaultModel實現電子表格。我的問題是當我輸入公式時,我想讓表更新它進入model.fireupdate和table changed事件之間循環的值。 我試着刪除TableModelEvent然後添加它,但它不工作。 電子表格更新正常,因爲我在控制檯中打印新的計算值。 爲前:在公式和值之間更改時,JTable電子表格會永久循環
我在一個單元格中輸入2 + 3
控制檯顯示的電子表格單元格的值= 5點的工作原理確定
JTable的細胞仍然顯示2 + 3,並導致一個例外,因爲我想更新單元格!
感謝您的意見。
public void tableChanged(TableModelEvent e) {
final int i = e.getFirstRow();
final int j = e.getColumn();
TableModel model = (TableModel) e.getSource();
final Object data = model.getValueAt(i, j);
if (e.getType() == TableModelEvent.UPDATE) {
my_spreadSheet.editCell(i, j, (String) data); // updating spreadsheet cell here
// and calculating it This works ok
}
my_table.setValueAt( // trying to update the jtable
my_spreadSheet.getCellContent(jtbl_row, jtbl_col), i, j); // here causes error.
}