![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Zverek |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 18.7.2005 Репутация: нет Всего: нет |
Есть редактируемый JTable, он реализует интерфейс KeyListener. В keyPressed() при нажатии определённых функциональных клавиш (F7 - F8) запускаются обработчики:
Всё работает, кроме случая, когда какая-нибудь ячейка находится в режиме редактирования - в этом случае KeyListener просто не реагирует на нажатие этих клавиш. DefaultEditor для ячеек не переопределял. Как бы это исправить ? Я так понимаю происходит это потому, что управление передаётся DefaultEditor 'у - а как реагировать на нажатия этих клавиш он не знает. Т.е. если я переопределю DefaultEditor и реализую в нём интерефейс KeyListener - всё будет работать. Так я мыслю ? |
|||
|
||||
| anonymouse |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 197 Регистрация: 18.8.2004 Репутация: 1 Всего: 1 |
Если ты имеешь ввиду TableCellEditor то мыслишь почти правильно. Дело не в самом KeyListener, а в том кому ты его присобачибаешь. Когда активизируется CellEditor, он шлет Component. И полу4ается 4то фокус у тебя стоит на этом компоненте.
Без переписывания TableCellEditor для всех колонок не обойдешся. --------------------
Много чего интересного... |
|||
|
||||
| Zverek |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 18.7.2005 Репутация: нет Всего: нет |
Да, я описался, под "DefaultEditor" следует понимать класс DefaultCellEditor.
Ясно. Спасибо. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |