元素应用程序响应



我有一个应用程序,在其中我将LSUIElement键设置为1,以便它在后台运行并且不显示Dock中的图标。我的意愿是使应用程序响应击键或鼠标事件。实际上主窗口只有在应用程序启动时才会出现。在主窗口可见的情况下,击键被正确地处理,但是如果我关闭它,就没有办法再次显示它(因此击键被忽略)。我希望我的应用程序是响应任何时候我推一个特定的键组合(即Scribblet为那些谁知道它)。谁能告诉我在哪里可以找到关于如何做到这一点的信息?

状态栏应用程序仅处于活动状态,因此您的应用程序只能在窗口或菜单已经打开时接收事件。

你的应用程序可以通过设置一个事件点击来实现一个"热键":

CGEventTapCreate(kCGSessionEventTap,
                 kCGTailAppendEventTap,
                 kCGEventTapOptionDefault,
                 kCGEventKeyDown
                 myEventTapCallback,
                 NULL);

这将允许您的应用程序在keyDown事件路由到其他应用程序之前检查它们。参见回调,了解回调函数的外观和行为。

在GitHub上还有一个由Dave DeLong编写的可能更容易使用的Cocoa类:DDHotKey.

相关内容

  • 没有找到相关文章

最新更新