当前位置: 首页 > 面试题库 >

在Windows / Linux / Mac上的Java程序中对全局热键有反应吗?

姜学海
2023-03-14
问题内容

Java6应用程序位于系统托盘中。需要使用热键(例如,Super-G或Ctrl-Shift-L等)将其激活,并执行某些操作(例如,显示输入框)。

我该怎么做:

  • Windows(XP或Vista)
  • OS / X
  • Linux(Gnome或KDE)

问题答案:

我已经使用JNA在Java中为全局热键编译了一个库。目前,它支持Windows,Linux和Mac OSX。它还支持Windows和Linux上的媒体密钥。

如果有人感兴趣,请尝试https://github.com/tulskiy/jkeymaster

我将不胜感激任何反馈。

谢谢。



 类似资料:
  • 我需要全局热键支持我的Java应用程序。 我想出了一些代码(大部分是复制的),但它不起作用。 HotkeyManager.java: 用户32。爪哇: msg. java: 它确实注册了热键(当程序运行时,按系统中的“F”键不会产生任何结果),但我从未得到任何到控制台的输出。发生了什么?我也知道jintellitype和jnativehook。我不能使用first,至于second,它总是监听所有

  • 问题内容: 我试图在我的Mac OS X应用程序中使用处理程序以Swift编写一个全局(系统级)热键组合,但我只是找不到适合的文档。我已经读到我必须弄乱一些旧版Carbon API,有没有更好的方法?您能告诉我一些概念证明Swift代码吗?提前致谢! 问题答案: 从Swift 2.0开始,您现在可以将函数指针传递给C API。

  • 问题内容: 就像Ctl,Alt +删除一样 我想编写一个程序,该程序在python中使用带有3个或更多参数的全局热键。仅当我按下键盘上的所有三个键时,分配的功能才应执行。例如alt,windows和F3。 这是我要运行的当前程序,但是其输出是: 该程序: 正在注册3个热键?可能? 说明如何使用一种方法,分配一个需要按下的键,然后分配是否需要按下两个键。但是我不会说该功能仅在同时按下所有功能时才执行

  • 问题内容: 如果您有一个DPI超过150的显示器(例如Macbook Pro),您可能还会发现问题: Java Swing应用程序上的字体对于DPI显示器来说太小了 ,我根本无法更改字体大小(直接忽略Windows DPI,仅显示 非常原始的DPI- > 96 。除了更改屏幕分辨率外,我什么也不能做,这绝对会使LCD上的所有内容变得模糊。 是的,我有一台具有高DPI监视器的笔记本电脑,分辨率为19

  • 我已经从Linux(Ubuntu)迁移到Mac OS。我用Java(swing)编写了一个应用程序。我已经成功地运行了同样的代码在windows和linux但在mac os我有一些问题。 下面是注释中的代码和问题: 另一个: 我当然编不出来。 Java版本:Ubuntu: java版本“1.7.0_07”java(TM)SE运行时环境(build 1.7.0_07-B10)java HotSpot

  • 我试图使一个应用程序,使用tab键做一些事情。我已经实现了KeyListener接口,并且能够对所有其他键进行编程。但是当我按下Tab键并在keyPressed()方法中,我放了以下内容: 我没有输出。tab键是唯一不提供输出的键。所有其他键都打印了相应的键码。这是为什么?