在 Java 控制台检测 Ctrl 和 Alt 键
Detect Ctrl and Alt keys at a Java console
我目前正在使用 JLine (http://jline.sourceforge.net/) 从 Java 的控制台一次读取一个字符。
Terminal terminal = TerminalFactory.getFlavor(TerminalFactory.Flavor.WINDOWS);
terminal.init();
terminal.setEchoEnabled(false);
int i;
InputStream in = terminal.wrapInIfNeeded(System.in);
i = in.read();
如何检测在调用 in.read();
时是否按下了 Ctrl 或 Alt 键?如果按下 Ctrl 或 Alt 键,我无法从 javadocs 或任何其他来源弄清楚如何阅读。
您需要获取可以使用本机库完成的键盘扫描码。参见:How can I get the keyboard scan code in java? Specifically: https://github.com/kwhat/jnativehook
我目前正在使用 JLine (http://jline.sourceforge.net/) 从 Java 的控制台一次读取一个字符。
Terminal terminal = TerminalFactory.getFlavor(TerminalFactory.Flavor.WINDOWS);
terminal.init();
terminal.setEchoEnabled(false);
int i;
InputStream in = terminal.wrapInIfNeeded(System.in);
i = in.read();
如何检测在调用 in.read();
时是否按下了 Ctrl 或 Alt 键?如果按下 Ctrl 或 Alt 键,我无法从 javadocs 或任何其他来源弄清楚如何阅读。
您需要获取可以使用本机库完成的键盘扫描码。参见:How can I get the keyboard scan code in java? Specifically: https://github.com/kwhat/jnativehook