Замените буквы номерами в качестве типов пользователей в jtextfield

StackOverflow https://stackoverflow.com/questions/4208782

  •  25-09-2019
  •  | 
  •  

Вопрос

У меня есть JTextField для пользователей для ввода серийного номера. Форма серийного номера такова, что она не содержит ни одного из букв i, o или s, поскольку они выглядят аналогичны 1, 0 и 5. Какой правильный способ сделать это так, чтобы если пользователь вносил один из этих букв, Вместо этого он входит в число?
Например, типы пользователей AaOo0 и он идет в jtextfield как Aa000
Чтобы уточнить, это должно произойти как пользовательские типы каждого персонажа, а не после того, как они закончили набрав и покинули текстовое поле.

Это было полезно?

Решение

Использовать DocumentFilter..

Что-то типа :

AbstractDocument doc = (AbstractDocument)jtextField.getDocument();
doc.setDocumentFilter(yourImplementationOfDocumentFilterWhichChangeOto0OnInsertAndReplace);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top