如何限制用户在SWT文本字段中输入特殊字符

时间:2014-03-24 04:24:29

标签: java validation swt textfield

我想限制用户在SWT文本字段中输入特殊字符。 我尝试了下面的代码,但它没有用....

   txt_Appname.addKeyListener(new KeyAdapter()
    {
        public void keyTyped(KeyEvent e) {
            char chars = e.character;
            if (!Character.isLetterOrDigit(chars)) {
                e.doit = false;
                return;
            }
        }
    });

任何人都可以给我一些限制SWT文本字段中特殊字符的工作代码吗?

1 个答案:

答案 0 :(得分:3)

使用VerifyListener

txt_Appname.addVerifyListener(new VerifyListener() {
  @Override
  public void verifyText(VerifyEvent e) {
      String text = e.text;
      for (int i = 0; i < text.length(); i++) {
         if (!Character.isLetterOrDigit(text.charAt(i)) {
            e.doit = false;
            return;
         }
      }
  }
});