[英]LSUIElement application be responsive
我有一個應用程序,其中我將 LSUIElement 鍵設置為 1,以便它在后台運行並且不在 Dock 中顯示圖標。 我的意願是讓應用程序響應擊鍵或鼠標事件。 實際上主要的 window 僅在應用程序啟動時出現。 在主 window 可見的情況下,擊鍵被正確處理,但如果我關閉它,就無法再次顯示它(因此擊鍵被忽略)。 我希望我的應用程序在我按下特定組合鍵的任何時候都能做出響應(就像 Scribblet 對那些知道它的人所做的那樣)。 誰能告訴我在哪里可以找到有關如何執行此操作的信息?
狀態欄應用程序僅處於活動狀態,因此您的應用程序只能在 window 或菜單已打開時接收事件。
您的應用程序可以通過設置Event Tap來實現“熱鍵”:
CGEventTapCreate(kCGSessionEventTap,
kCGTailAppendEventTap,
kCGEventTapOptionDefault,
kCGEventKeyDown
myEventTapCallback,
NULL);
這將允許您的應用程序在它們被路由到其他應用程序之前檢查keyDown
事件。 請參閱回調以了解您的回調 function 的外觀和行為方式。
還有一個可能更易於使用的 Cocoa class 由 Dave DeLong 編寫,可在 GitHub 上找到: DDHotKey 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.