gpt4 book ai didi

java - KeyEvent.getKeyText() 在 OSX 中返回特殊字符(例如 'VK_ENTER' )但在 Windows XP 中没有,有什么解决办法吗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:42:48 29 4
gpt4 key购买 nike

我正在使用 KeyEvents 和

KeyEvent.getKeyText(KeyEvent.VK_...) 

为了得到KeyEvent对应的文本。

在 OSX (Lion) 中,当我请求特殊键的文本时,如 TAB 或 ENTER (KeyEvent.VK_ENTER),我得到相应的符号(例如,对于 Enter,我得到弯曲的箭头)。在 Windows XP 系统中相同的是给我键名(例如“Enter”)而不是符号。

有没有办法在 XP 中也获取特殊字符?

最佳答案

MAC 有不同的实现:

These were changed intentionally to provide the proper symbols for menu shortcuts in Swing for in-window menu bars. Instead of using the word "Meta" or "Command" we actually now return the unicode symbol that the system menu bar shows.

在这种情况下,您可以使用该键的常量,VK_ENTER,例如

if (evt.getKeyCode() == KeyEvent.VK_DOWN || evt.getKeyCode() == KeyEvent.VK_KP_DOWN) {}

或者您可以使用 Map

将键映射到它的字符串名称
map.put(KeyEvent.VK_ENTER, '\u21b5'); \\ ↵

关于java - KeyEvent.getKeyText() 在 OSX 中返回特殊字符(例如 'VK_ENTER' )但在 Windows XP 中没有,有什么解决办法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10417288/

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