2

到目前为止我看到的解决方案是听单元格变化,即

    TableModelListener tableModelListener = new TableModelListener() {

        @Override
        public void tableChanged(TableModelEvent e) {
            if (e.getType() == TableModelEvent.UPDATE) {

                row = e.getFirstRow();
                col = e.getColumn();

                // do something
            }
        }
    };

但我需要在输入时和按回车之前获取单元格值、selectedRow 和 selectedColumn。怎么做?

4

3 回答 3

2

在您的, 此处显示使用 a DocumentListener,此处说明或 a DocumentFilter, seen hereTableCellEditor

于 2013-01-26T19:27:21.440 回答
1

暗示 :

 if (jTable1.getCellEditor() == null) {
                    System.out.println("Not Edited");

                } else {

            System.out.println(jTable1.getValueAt(jTable1.getSelectedRow(),jTable1.getSelectedColumn()));
    }

其中 jTable1 是您的 JTable 名称

于 2013-01-26T19:11:25.243 回答
0

使用TableCellListener来监听TableModel. 通过使用它,您可以获得表格中已编辑单元格的row-index、和。column-indexold-valuenew-value

于 2013-01-26T18:14:35.833 回答