gpt4 book ai didi

java - KeyListener 正在触发错误的事件

转载 作者:行者123 更新时间:2023-12-02 05:59:18 30 4
gpt4 key购买 nike

我编写了一个简单的 KeyListener 来识别 Arrow_Left/Right 事件。由于某种原因,我的左键触发了 1 个 VK_LEFT 按下和 1 个 VK_RIGHT 事件(右箭头正常工作)

这是否一定是硬件/键盘问题(箭头键工作正常)或者有人知道如何解决这个问题吗?

public void keyPressed(KeyEvent e) {
switch(e.getKeyCode()) {
case KeyEvent.VK_LEFT: {
//left
System.out.println("leftPressed");
keyLeftPressed = true;
}
case KeyEvent.VK_RIGHT: {
//right
System.out.println("rightPressed");
keyRightPressed = true;
}
}
}

leftClick 上的控制台输出是:左键按下右键按下

右键单击:右键按下

最佳答案

您忘记了 case 语句中的 break 语句。如果你没有打破,下一个案例将被执行。

public void keyPressed(KeyEvent e) {
switch(e.getKeyCode()) {
case KeyEvent.VK_LEFT: {
//left
System.out.println("leftPressed");
keyLeftPressed = true;
break;
}
case KeyEvent.VK_RIGHT: {
//right
System.out.println("rightPressed");
keyRightPressed = true;
break;
}
}
}

关于java - KeyListener 正在触发错误的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55987637/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com