Я реализовал фильтр документов, унаследовав класс DocumentFilter
orignal и заменив его методы insert
и replace
.Он реагирует на все клавиши, кроме клавиши Enter .Я имею в виду, что когда я нажимаю Enter , он должен перейти к следующей строке в моем JTextPane
, но это не так.Итак, как мне заставить мой Enter
ключ работать правильно?
Код
class UrduFilter extends DocumentFilter {
//My urdu filter overriding insertString and replace
char urduChar;
String urduString;
public void insertString(DocumentFilter.FilterByPass fb, int offset,
String text, AttributeSet attr) throws BadLocationException {
System.out.println("\n" + text);
urduChar = Translate.translateToUrdu(text.charAt(0));
urduString = Character.toString(urduChar);
fb.insertString(offset, urduString, attr);
}
//no need to override remove(): inherited version allows all removals
public void replace(DocumentFilter.FilterByPass fb, int offset, int length,
String text, AttributeSet attr) throws BadLocationException {
urduChar = Translate.translateToUrdu(text.charAt(0));
System.out.println(text + " ... " + text.charAt(0));
urduString = Character.toString(urduChar);
fb.replace(offset, length, urduString, attr);
}
}
Спасибо.