繁体   English   中英

检查整数是否是键盘中的键

[英]Check if integer is a key in keyboard

我是 Java Swing 的新手。 我在检查数据库中获取的整数是否是键盘中的有效键时遇到问题。

如果 int 是有效的键码,是否有一些内置函数返回 true 或 false?

像这样的东西

KeyEvent.getKeyText(119);
= F8(所以是真的)

KeyEvent.getKeyText(134319);
= 未知(所以是假的)

谢谢!

您可以查看 KeyEvent 类的源代码,并注意在执行getKeyText(int keyCode)方法时,如果未找到匹配项,则将计算并返回特定值,并使用默认连接创建它:只需执行相同的控制并检查在您的代码上调用 getKeyText() 是否确实返回该值。

我刚刚测试了这个,它似乎有效:

public static boolean isValidCode(int keyCodeToCheck) {
        String unknown = Toolkit.getProperty("AWT.unknown", "Unknown");
        return !KeyEvent.getKeyText(keyCodeToCheck).equals(unknown + " keyCode: 0x" + Integer.toString(keyCodeToCheck, 16));
}

希望这可以帮助你,祝你有美好的一天:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM