2

私がこれまでに見た解決策は、セルの変更を聞くことです。

    TableModelListener tableModelListener = new TableModelListener() {

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

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

                // do something
            }
        }
    };

しかし、入力時に、Enter キーを押す前に、セルの値、selectedRow および selectedColumn を取得する必要があります。どうやってするの?

4

3 に答える 3

2

ここDocumentListenerに示されている、またはここに示されている を、ここに示されている で使用します。DocumentFilterTableCellEditor

于 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-indexcolumn-indexold-valueおよびを取得できます。new-value

于 2013-01-26T18:14:35.833 に答える