KeyTyped事件无法识别冒号键

时间:2013-12-19 05:02:31

标签: java keyevent

我试图只接受jTextField中的数字(0 ... 9)和':'(冒号)键,但它不接受冒号键。那是为什么?

我的代码是:

private void horaInicioKeyTyped(java.awt.event.KeyEvent evt) {
    char c=evt.getKeyChar();
    if(!(Character.isDigit(c) || c== KeyEvent.VK_BACK_SPACE || 
         c==KeyEvent.VK_DELETE || (c==KeyEvent.VK_COLON ))){
            evt.consume();
            getToolkit().beep();

    }
}

1 个答案:

答案 0 :(得分:3)

不要使用VK_COLON,只需使用':' -

if (Character.isDigit(c) || c==':' || 
      c==KeyEvent.VK_BACK_SPACE || c==KeyEvent.VK_DELETE) {
  evt.consume();
  getToolkit().beep();
}