| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: GUI и Java FX приложения > Слушать редактирование текста |
| Автор: _Y_ 30.12.2019, 21:46 |
| Не пишу на Java очень давно, но иногда приходится поддерживать старые проекты. Так что извините, если вопрос несколько чайниковый. Имеется поле JTextField или JTextArea. Надо к такому полю добавить Listener, который бы сообщал, что текст изменён пользователем. Попробовал использовать DocumentListener, но он реагиреут на любые изменения, а мне нужно слушать только те изменения, которые ввёл пользователь. Думал, может быть какой-нибудь KeyListener надо использовать, но тогда будет слушаться не изменение текста в поле, а любое нажатие клавиш. Да и изменения мышью как-то отдельно придётся слушать. Как грамотно поступить? |
| Автор: SVN74 2.1.2020, 23:55 |
| Как вариант можно проверять контрольную сумму текста (к примеру CRC32), при попытке сохранения документа пользователем... |
| Автор: _Y_ 9.1.2020, 22:16 |
Поле получает значение при инициализации, а пользователь может его менять. Подозреваю, что вопрос свой я могу уже снять. Стояла задача сделать Undo/Redo функцию не для одного текстового поля (что решается стандартным классом javax.swing.undo.UndoManager), а для формы, состоящей из полей разных типов. Для этого на каждом поле надо было бы слушать изменения, внесённые пользователем, но не самой программой. Но за прошедшие несколько дней пришло понимание, что приоритетность такого Undo/Redo для моего поекта стремится к нулю. Спасибо |
| Автор: LSD 13.1.2020, 21:56 |
| Я бы, создал документ, инициализировал его нужными данными, а затем бы уже повесил слушателя. |