Как это сделать с кодом? Я знаю, что могу использовать JFormattedTextField
, но я делаю свою собственную библиотеку так, чтобы это можно было сделать JTextField
. Вот методы, которые я пробовал:Предотвращение буквенно-цифровых символов в JTextField
OnKeyRelease
: Да, это самый лучший метод, который я нашел, я заменил все символы, которые я хочу с «». Но это медленный, я имею в виду, что он все еще показывает запрещенные символы, когда ключ не работает, и удаляет символы, когда ключ освобождается, точно так же, как имя его события. Что меня беспокоит.evt.consume
: Я не знаю, почему этот метод работает на все, кроме цифр и букв, таких как Backspace, Home и т. Д. Любая идея, как сделать этот метод также работать с числами или буквами?
Если бы вы могли дать мне ключ или ссылку я бы признателен, спасибо :)
Я не могу использовать это для JTextField, могу ли я? –
Да, вы можете. См. Мое редактирование и ссылку, которую я предоставил. – wchargin
Где я должен положить этот последний код? Я поместил его в свой конструктор, но это не влияет на мой JTextField. Кроме того, я также предостерегаю бросать в '(javax.swing.text.AttributeText)', это правильно? Потому что в методе 'super.replace' он считывает требуемый параметр как' javax.swing.text.AttributeText' и находит 'javax.print.attribute.AttributeText'. –