Краткий ответ: вы не можете добавить ActionListeners к JCheckboxes в таблице по двум причинам:
- При настройке по умолчанию один JCheckbox используется для визуализации всех ячеек с флажками.
- Щелчки мыши по ячейке таблицы, содержащей JCheckBox, не передаются на флажок, они поглощаются таблицей.
Я думаю, что важно спросить , почему вам нужны эти события? Ответ, который вы дадите, будет отражать лучший подход.
Если вы хотите разрешить пользователю редактировать состояние флажков, лучше всего подменить TableModel.isCellEditable(int, int)
, чтобы вернуть true для столбцов флажков, а затем просто обновить исходные данные при обновлении TableModel.