Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: GUI и Java FX приложения > Контроль ввода JTextField (Подробности)


Автор: Turinets 30.3.2009, 20:02
Задача вобщем не важна.

Имеется полетекстовое, которое должно иметь правитьный формат.
Ну для начала это целочисленное поле, которое может принимать значения от x_min до x_max. Причём значения могут быть отрицательными. К этому всему приконтачить надо 2 кнопки (инкремент и дикремент), но это уже не важно.

То что надо писать свой PlainDocument - эт я понял, но вот не могу найти толковое описание методов. Нужно разобраться с 3-мя методами. Читал, читал, но не понял до конца как они между собой роли распределяют:
removeUpdate(), insertUpdate(), InsertString().

Что и для чего нужно переопределять.

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

Итак что происходит когда:
1) нажимаю на клавишу (добавляется символ)
2) вставляю из буфера
3) заменяю из буфера выделенный участок
4) стираю выделенное
5) стираю в буфер (cut)

Автор: Connie 30.3.2009, 22:06
Turinets, а не проще использовать InputVerifier который будет определять подходит ли вводимое число под искомые параметры?

По крайней мере, я так сделал, что бы вводить числа в определённом диапазоне, т.е. пользователь ввести число то может, а вот перекинуть фокус нет. Либо может, но тогда число автоматом корректируется.

Автор: LSD 31.3.2009, 12:57
Цитата(Turinets @  30.3.2009,  20:02 Найти цитируемый пост)
Естественно ответы принимаются на Великом и Могучем.

Ну тогда тебе прямой путь в http://glagol.nad.ru/ программисты smile 


Что же касается задачи, то лучше всего использовать JSpinner с NumberModel, и при остром желании DocumentFilter.

Автор: chaos 1.4.2009, 08:32
Turinets, в данном случае поможет только документация по swing'у

Добавлено через 3 минуты и 20 секунд


http://bruceeckel.by.ru/tij/Chapter13.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)