为位于系统托盘中的Java程序创建键盘挂钩

基本上我有一个在系统托盘中运行的java程序,如果用户按下说按CTRL SHIFT 1它会选择其中一个位于托盘中的java程序的右键选项.

我想我正在寻找的是一个关于这样做的教程,或者最简单的方法.我之前从未做过这样的事情,所以可能是某种noobie教程?

谢谢

解决方法:

所以,创建一个键盘钩子并不像它看起来那么容易,为了安全起见,java没有提供与系统事件交互的直接方式;因为它可能导致有关JVM,sysytem的内存和Java Framework的可移植性的严重问题.

你有4种方法来制作全局键盘钩子:

1-学习JNI/JNA,我更喜欢JNA,因为它比JNI容易得多,在这两种情况下你都应该处理.dll文件.

2 – 使用JIntellitype,正如你所说的那样 – 会出现一些问题.

3- Sergei Biletnikov here的优雅解决方案.

4-忽略Java,并尝试使用Autoit V3(我不是100%肯定它,但我认为你可以将信号/事件从Autoit发送到你的Java应用程序,所以Autoit只是作为捕捉全局击键的桥梁)

上一篇:Java Applet中的键盘输入


下一篇:Linux:直接与USB键盘连接