java - 如何过滤退格键盘输入

标签 java javafx-2

我有这段代码,当按下另一个数字键时会发出一条消息:

txtValueOfClause.addEventFilter(KeyEvent.KEY_TYPED, new EventHandler<KeyEvent>() {
            @Override
            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();
                }
            }
        });

现在,如果我按了错误的按钮并按退格键将其删除,我也会收到此错误消息。 如何在 if 语句中添加退格输入?

最佳答案

我找到了答案:

txtValueOfClause.addEventFilter(KeyEvent.KEY_TYPED, new EventHandler<KeyEvent>() {
            @Override
            public void handle(KeyEvent t) {
                char ar[] = t.getCharacter().toCharArray();
                char ch = ar[t.getCharacter().toCharArray().length - 1];
                int codeBackSpace = ch;
                if (!(ch >= '0' && ch <= '9') && codeBackSpace!=8) {

                    System.out.println("The char you entered is not a number");
                    t.consume();
                }
            }
        });

关于java - 如何过滤退格键盘输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29950364/

相关文章:

java - 无法在 Eclipse Oxygen 上设置 Selenium 3

java - 判断一个类是否是另一个类的字段

java - 循环中的 CompletableFuture : How to collect all responses and handle errors

java - 场景构建器不显示 Controller 字段

java - 如何在多线程 Swing MVC 客户端-服务器程序中实现 SwingWorker?

java - 如何在其他窗口之上生成一个独立的 JFileChooser 对话框?

JavaFX HMTLEditor 对 'return' 键没有反应

JavaFX:右键单击菜单项

java - 如何限制 JavaFX2 上下文菜单中 MenuItem 的宽度

java - 如何使用 JUnit 对 JavaFX Controller 进行单元测试