2010-01-05 59 views
9

大家好,我對可可和XCode很新,所以我很抱歉,如果這是一個愚蠢的問題。OSX可可:如何檢查哪個窗口焦點?

我該如何去檢查哪個窗口焦點?

此外,我將如何去檢查某個窗口是否在焦點上,如果這與以前的解決方案不一樣。

感謝您的幫助。

回答

3

您正在尋找'keyWindow'。這是NSWindow和NSApplication的一個屬性。前者是一個bool,後者是一個NSWindow實例。

17

實際上有兩種形式的「焦點」:

  • 具有活性的外觀的窗(着色/深灰色紅綠燈,在標題欄,沒有模糊的代理圖標等黑色文本)是主要窗口。
  • 接收關鍵事件的窗口是關鍵窗口。

考慮帶Inspector面板的文檔窗口。如果用戶正在編輯Inspector字段中的某些文本,則文檔窗口可能是主文件,但Inspector面板是關鍵。

要獲得the key windowthe main window,請詢問共享的NSApplication實例。而且,正如TechZen指出的那樣,您可以詢問一個窗口whether it is keywhether it is main

+0

感謝您的幫助,我理解我應該做什麼的想法,但我無法將其付諸實踐。 我到底該如何去詢問共享的NSApplication實例? 我一直在研究一些教程,但對於這種類型的編程我還是比較新的。所以我很抱歉,如果我問什麼似乎是一個愚蠢的問題。 如果你能給我提供一個代碼示例,這將是一個很大的幫助。 再次感謝。 – jbx 2010-01-05 17:16:35

+1

請按照我提供的鏈接。 – 2010-01-05 17:25:48