Модераторы: LSD, AntonSaburov
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> JFormattedTextField 
:(
    Опции темы
akula84
Дата 14.1.2005, 13:28 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Хочется сделать вот какую вещь:
Сделать поле в которое можно вводить номер счета.
То есть изначально в поле такой вариант(при запуске)
[#####-###-#-############]
Потом пользователь вводит в это поле значение. Например он хочет ввести последние 4 цифры счета. То есть должно получиться так:
[#####-###-#-########2222]

Пытаюсь реализовать следующим образом:


MaskFormatter AccFormat;
AccFormat = new MaskFormatter("#####-###-#-############");
AccFormat.setValidCharacters("1234567890");
AccFormat.setPlaceholder("####################");
AccFormat.setOverwriteMode(true);

JFormattedTextField clAcc = new JFormattedTextField(AccFormat);



Не работает следующая вещь:Нельзя вводить цифры поверх изначательной маски #####-###-#-############
Необходжимо сначала ее полностью стереть, а только потом вводить. Как этого избежать? Чтобы результат мог получиться например таким
[#####-###-#-########2222]

Заранее спасибо за помощь
  Вверх
Domestic Cat
Дата 14.1.2005, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Может, стоит поставить
Код

AccFormat.setAllowsInvalid(true);

вместо
Код

AccFormat.setOverwriteMode(true);



--------------------

PM   Вверх
akula84
Дата 14.1.2005, 16:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Появилась другая проблема:
AccFormat.setAllowsInvalid(true) снимает маску, то есть теперь в номере счета может быть и не 20 символов и разделители работают как отдельные символы
И после перехода табом в другое поле маска восстанавливается, а все введенные данные пропадают.
Можно как-то иначе попробовать решить проблему?

  Вверх
Domestic Cat
Дата 14.1.2005, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 13
Всего: 172



Проще всего так:
Код

clAcc.setValue("00000-000-0-000000000000");



--------------------

PM   Вверх
igon
Дата 14.1.2005, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: 7
Всего: 21



Вариант - создать N полей по числу сегментов в коде счета и обозвать их соответственно: МФО, валюта, контрольный ключ и т.д. И пользователю будет проще менять конкретный сегмент, чем искать позицию, с которой начинается нужный сегмент в длинной строке. Правда, придется добавить еще и кнопку типа "ОК" smile


--------------------
Хотите поговорить об этом?
PM   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0420 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.