2010-12-11 76 views
1

我成功註冊了一個熱鍵;它的處理程序將我的應用程序窗口帶到前面:[NSApp activateIgnoringOtherApps:YES];(它應該至少)。可可:如何重新打開關閉的窗口

當我的應用程序窗口不在前面時,我有預期的行爲。
但是,當我關閉窗口(單擊紅色x)或將其最小化時(單擊黃色-),它不起作用。 我仍然看到日誌,所以處理程序被調用。

任何想法?

感謝。
-L

回答

6

我將設置窗口,在筆尖以下屬性:

alt text

關鍵的事情是,如果你打算具有窗口打開和關閉幾次,以確保「發行何時關閉「未被選中。您可能還想取消選中「啓動時可見」以更清楚地表明您將自己在代碼中處理窗口的顯示。 (這個標誌的存在可能會導致你的窗口被顯示出來,立刻在裝入筆尖時)。

要顯示在代碼窗口,只是做類似如下(假設你有一個IBOutlet窗):

[window makeKeyAndOrderFront:nil]; 
+0

謝謝! makeKeyAndOrderFront和activateIgnoringOtherApps的組合解決了這個問題。 – LG01 2010-12-11 04:32:31

2

您必須明確告訴窗口出現在屏幕上。 activateIgnoringOtherApps:不會打開所有以前關閉的窗口。

+0

謝謝。我添加了一個對makeKeyAndOrderFront的調用,它的確有竅門。 – LG01 2010-12-11 04:35:18