Отмена события обновления таблицы в Swing - PullRequest
1 голос
/ 30 декабря 2011

У меня есть случай, когда я хотел бы перехватить событие обновления таблицы, проверить, что является текущим значением и каким будет новое значение для соответствующего столбца + строки. Если это не то, что ожидается, я хотел бы отменить обновление и вернуть его к тому, что было. Это невероятно сложно сделать с TableModelListener, и я продолжаю сталкиваться с ошибками переполнения стека, потому что я не могу вручную поддерживать состояние и возвращать его обратно без его рекурсивного повторного вызова.

1 Ответ

3 голосов
/ 30 декабря 2011

Создайте свою собственную TableModel (или расширьте DefaultTableModel или AbstractTableModel) и переопределите setValueAt - там вы можете либо обновить базовую модель (с помощью super.setValueAt ()), либо выбросить ее - вам не нужно сохранятьстарое значение, потому что изменение никогда не произойдет, если вы не вызовете суперкласс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...