如何在javaFX 2.0中实现NumberField? [英] How to implement a NumberField in javaFX 2.0?

查看:204
本文介绍了如何在javaFX 2.0中实现NumberField?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要在用户界面中插入数字字段.因此,我需要检查文本字段上的按键事件,以检查输入字符是否为数字.我通过扩展TextField创建了一个类.如果TextField类中有一个可以处理keyEvent的方法,我可以简单地用适合数字字段的方法来覆盖该方法.有什么想法吗?

I need to insert a number field into my UI. So I need to check the key events on a text field in order to check whether the input character is a number. I created a class by extending TextField. If there is a method in TextField class which handles keyEvents, i can simply overide that method with suits to number field. Any ideas?

谢谢

推荐答案

找到了解决方案. :)

Found a solution. :)

public class NumFieldFX extends TextField {
   public NumFieldFX() {
      this.addEventFilter(KeyEvent.KEY_TYPED, new EventHandler<KeyEvent>() {
         public void handle( KeyEvent t ) {
            char ar[] = t.getCharacter().toCharArray();
            char ch = ar[t.getCharacter().toCharArray().length - 1];
            if (!(ch >= '0' && ch <= '9')) {
               System.out.println("The char you entered is not a number");
               t.consume();
            }
         }
      });
   }
}

这篇关于如何在javaFX 2.0中实现NumberField?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆