posted 21 years ago
All,
I am trying to detect when the user pushes backspace or delete but when the key event issent to my listener the keycode is 0?
Am I doing something wrong?
Rob
public void keyTyped(KeyEvent event) {
Object component = event.getSource();
if ( component instanceof JTextField ) {
JTextField field = (JTextField)component;
System.out.println(event.getKeyCode());
System.out.println(event.getKeyChar());
if ((event.getKeyCode() == KeyEvent.VK_BACK_SPACE) ||
(event.getKeyCode() == KeyEvent.VK_DELETE)) {
//user deleted their input all components should be
//enabled
if (field.getText().length() == 0 ) {
Component c[] = getComponents();
for (int i = 0; i < c.length; i++) {
JComponent temp = (JComponent)c[i];
temp.setEnabled(true);
}
}
}
else {
Component c[] = getComponents();
for (int i = 0; i < c.length; i++) {
JComponent temp = (JComponent)c[i];
if (!temp.hasFocus()) {
temp.setEnabled(false);
}
}
}
}
}