2011-06-09 52 views
5

因此,我正在使用桌面覆蓋應用程序,該應用程序使用跟蹤區域來確定鼠標進入和退出該區域,然後執行某些操作。本質上,我正在構建一個矩形,可以知道鼠標是否在其上方移動,並且會發生變化(極其基本的翻轉)。NSWindow註冊鼠標事件(使用NSTrackingArea),即使應用程序不重點?

唯一棘手的部分是我希望它能夠在可見時註冊這些事件即使它不是firstresponder或key。問題是,爲了註冊mouseEntered和mouseExited事件,我必須首先單擊窗口以使其成爲關鍵,然後它將它們註冊爲好。

我的問題是,最好的實現方式是什麼?儘管我很接近,但我還沒有找到完美的解決方案。

以下鏈接使其能夠註冊CLICK事件,即使它未聚焦,但我無法找到能夠實際註冊mouseEntered和mouseExited的內容。

Make OSX application respond to first mouse click when not focused

回答

5

創建選項NSTrackingActiveAlways一個NSTrackingArea

+0

完美運作。我不能相信我錯過了這一點。我正在考慮NSWindow和NSView類文檔,認爲我在那裏丟失了一些東西。謝謝您的幫助。 – 2011-06-10 06:55:44

相關問題