2011-06-01 62 views

回答

8

如果您使用的是默認的Cocoa Application模板,那麼您的應用程序委託對MainMenu.xib中的窗口有一個引用。您可以簡單地致電

[window makeKeyAndOrderFront:self]; 

或許在一個菜單項觸發的IBAction重新打開窗口。注意:確保IB中未選中「關閉時釋放」和「一次性」框。

+0

我正在嘗試做同樣的事情。我使用該模板創建了一個新應用程序。我不完全確定上述內容應該去哪裏。它應該在我的AppDelegate類中的某個地方?即使在關閉窗口後,該課程是否繼續「運行」? – bugfixr 2011-10-17 12:24:20

+0

是的,是的。您的筆尖中有一個對象是應用程序委託的實例;它在你的程序運行的整個過程中通常是活着的。 – 2011-10-17 17:45:34

+0

感謝您的支持!幫我!我差點忘了makeKeyAndOrderFront方法 – swdev 2013-01-18 09:25:32

6

當然,如果用戶關閉一個窗口,他們希望它消失。重新打開他們剛剛關閉的窗戶很可能會讓他們煩惱。如果你是程序員,不尊重他們的願望,他們可能會將你的程序轉移到垃圾桶而不尊重你的程序。

如果您想要關閉主窗口,請禁用關閉按鈕。您可以在Window屬性檢查器的界面生成器中輕鬆完成此操作。

+7

警告通常是健全的,但我不確定問題是「我怎樣才能讓用戶的手指不讓窗戶關閉?」我認爲它是「用戶可能需要在關閉它之後重新顯示窗口,我該怎麼做?」 (有關此行爲的信息,請參閱活動監視器等) - 有一個菜單項會在關閉主應用程序窗口後返回。) – 2011-06-01 20:29:55

+0

我不是試圖將窗口推送給用戶。我試圖以編程方式觸發它,他們點擊一個按鈕後會說「打開」。 – 2011-06-21 12:45:34

+0

我同意傑里米,但蘋果沒有。我認爲他們的HIG要求有點不合理,但是如果我希望他們在App Store中發佈我的東西,那麼在他們決定調用HIG指南的時候(例如在提交意味着修復其他先前批准的應用程序中的實際錯誤的情況下) ,那麼你可以選擇awakeFromNib或gtfo,我猜。在我的最後一輪與他們在一起的時候,我的眼睛裏充滿了憤怒的淚水。但是,他們贏了。我想要在App Store中比我想要的更多。 – 2017-03-01 01:05:06

相關問題