Пытаюсь обработать ввод с клавиатуры в текстовую область. Запоминаются не все введённые символы, а только буквы. Проблема с обработкой кнопки backspace:
| Код | private JTextField getJTextField7() { if (jTextField7 == null) { jTextField7 = new JTextField(); newName = new String();//сюда сохраняется нужная строка jTextField7.setPreferredSize(new Dimension(4, 19)); jTextField7.addKeyListener(new KeyAdapter() { public void keyTyped(KeyEvent e) { int code = e.getKeyCode();//Achtung! if(code == KeyEvent.VK_BACK_SPACE){ if(newName.length() > 0){ String str = newName.substring(0,newName.length()-2 ); newName = str; //newName = newName.substring(0,newName.length()-2 ); System.out.println(newName.toString()); } } String tmp = Character.toString(e.getKeyChar()); if(isLetter(tmp)){//метод, проверяющий, является ли символ буквой newName = newName + tmp; System.out.println(newName.toString()); } } }); } return jTextField7; }
|
Проблема,собственно, в том, что код кнопочки всегда получается = 0(( |