SWT按下ENTER按钮事件处理程序

时间:2018-11-20 08:49:53

标签: java events swt

我正在尝试处理在SWT文本字段中键入时按下“输入按钮”的事件。到目前为止,这是我所做的:

textField.addKeyListener(new KeyListener() {

        @Override
        public void keyReleased(KeyEvent arg0) {
            // TODO Auto-generated method stub

        }

        @Override
        public void keyPressed(KeyEvent arg0) {
            if(arg0.keyCode == SWT.CR) {
                //do something here....
            }
        }
    });

这实际上在我按下Enter键时有效,但在我按下数字键盘上的Enter键时无效。

有人知道该按钮的常量变量吗?

谢谢

2 个答案:

答案 0 :(得分:2)

尝试使用遍历侦听器,该遍历侦听器用于处理Enter:

textField.addTraverseListener(new TraverseListener()
  {
    @Override
    public void keyTraversed(final TraverseEvent event)
    {
      if (event.detail == SWT.TRAVERSE_RETURN)
        { 
          ...
        }
    }
  });

答案 1 :(得分:1)

我会尝试:

if (arg0.keyCode==SWT.CR || arg0.keyCode==SWT.KEYPAD_CR)