JavaFx KeyEvent不会移动对象

标签 java javafx keyevent

我目前正在尝试制作一个非常简单的游戏,作为使用 JavaFX 可以完成的实验,并且我有一个代表一个人的小矩形。该矩形设置在一个 Pane 中,我试图弄清楚如何最好地制作它,以便箭头键使他向左移动 5 px。下面的代码是我正在尝试的。如果您知道如何使此代码工作或有更好的代码,我将非常感激。

scene.setOnKeyPressed(new EventHandler<KeyEvent>() {
        @Override
        public void handle(KeyEvent ke) {
            if(ke.equals(KeyCode.KP_LEFT)) {
                int xLoc = (int)avatar.getX();
                int newX = xLoc - 5;
                int yLoc = (int)avatar.getY();
                avatar.relocate(newX, yLoc);
            }
        }
    });

谢谢!

最佳答案

KeyEvent 不是代码,您需要 getCode()

if (ke.getCode().equals(KeyCode.KP_LEFT))

关于JavaFx KeyEvent不会移动对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41540307/

相关文章:

android - 是否可以创建一个监听硬件按键的 Android 服务?

java - drjava JFrame 帮助对象在 KeyEvent 按钮释放后不会继续移动

java - Android应用程序崩溃: FATAL EXCEPTION: main

java - 如何更改 JFoenix 拾色器库的 CSS 样式?

java - Listview 无法正确显示实时可观察列表更改

java - 菜单快捷键 KeyEvent 不起作用

Java : when do you want to customize the serialization process?

java - 元素的优先级队列排序

java - Spring Boot 在模块化 Java 中配置 DevTools

java - 将第二个项目添加到我的堆栈 Pane 时,第一个项目失去了它的 Event/MouseOn。为什么?我该如何解决? JavaFX