gpt4 book ai didi

java - 检测需要按下 Shift 的按键的按键事件

转载 作者:行者123 更新时间:2023-11-30 07:37:27 24 4
gpt4 key购买 nike

我有关于 (scene).setOnKeyPressed() 的问题。我正在尝试制作一个简单的计算器,但是按键代码发生了一些奇怪的事情。

这是我的代码的一小部分:

switch (KeyEvent.getCode()) {
case PLUS:
plus.fire();
break;
case MINUS:
min.fire();
break;
case EQUALS:
// something
}

所以 一切都很好,但是因为你需要按 Shift 才能到达 + 键(至少在我的键盘)它不会转到 + 大小写,而是转到 = 大小写(位于 下方 + 在我的键盘上)。

有什么方法可以让我检测到需要先按下 Shift 的键吗?

最佳答案

对于任何具有有效按键输出的按键(例如 +、-、=),都会生成 3 个按键事件(KEY_PRESSED、KEY_TYPED、KEY_RELEASED)。确保调用 KEY_TYPED 事件在 switch case 内进行处理。

    if(keyEvent.getKeyCode() != KeyEvent.VK_UNDEFINED) { // this will only process KEY_TYPED event
switch (KeyEvent.getCode()) {
case PLUS:
plus.fire();
break;
case MINUS:
min.fire();
break;
case EQUALS:
// something
}
}

关于java - 检测需要按下 Shift 的按键的按键事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35188215/

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