Java JTable расширяет ширину столбца при редактировании.Нет кейлоггинга - PullRequest
0 голосов
/ 25 апреля 2018

Я хочу, чтобы столбец JTable расширялся по ширине, если пользователь вводит слишком много символов в ячейку, чтобы содержимое оставалось видимым. Я не хочу использовать кейлоггер, так как он не чистый, могут быть другие способы редактирования ячейки.

Кажется, я могу реагировать на слушателей только в начале редактирования или в его конце. Могу ли я также реагировать на редактирование между ними? Или есть что-то встроенное? Я бы догадался, что это стандартная задача.

1 Ответ

0 голосов
/ 26 апреля 2018

Мне удалось прослушать любое событие редактирования, используя DocumentListener для каждой ячейки.

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

В любом случае, если я действительно придерживаюсь этого подхода, мне нужно рассчитать необходимый размер столбца на основе символов, введенных в мою ячейку - трудная задача, если я используюнемоноширинные шрифты.Есть идеи на этот счет?

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