我想用編程方式在用戶使用X按鈕關閉Cocoa應用程序的主窗口後重新打開它。 我知道它仍然在記憶中,但我不知道在哪裏。Cocoa:用X關閉程序後顯示主窗口
回答
如果您使用的是默認的Cocoa Application模板,那麼您的應用程序委託對MainMenu.xib中的窗口有一個引用。您可以簡單地致電
[window makeKeyAndOrderFront:self];
或許在一個菜單項觸發的IBAction
重新打開窗口。注意:確保IB中未選中「關閉時釋放」和「一次性」框。
當然,如果用戶關閉一個窗口,他們希望它消失。重新打開他們剛剛關閉的窗戶很可能會讓他們煩惱。如果你是程序員,不尊重他們的願望,他們可能會將你的程序轉移到垃圾桶而不尊重你的程序。
如果您想要關閉主窗口,請禁用關閉按鈕。您可以在Window屬性檢查器的界面生成器中輕鬆完成此操作。
警告通常是健全的,但我不確定問題是「我怎樣才能讓用戶的手指不讓窗戶關閉?」我認爲它是「用戶可能需要在關閉它之後重新顯示窗口,我該怎麼做?」 (有關此行爲的信息,請參閱活動監視器等) - 有一個菜單項會在關閉主應用程序窗口後返回。) – 2011-06-01 20:29:55
我不是試圖將窗口推送給用戶。我試圖以編程方式觸發它,他們點擊一個按鈕後會說「打開」。 – 2011-06-21 12:45:34
我同意傑里米,但蘋果沒有。我認爲他們的HIG要求有點不合理,但是如果我希望他們在App Store中發佈我的東西,那麼在他們決定調用HIG指南的時候(例如在提交意味着修復其他先前批准的應用程序中的實際錯誤的情況下) ,那麼你可以選擇awakeFromNib或gtfo,我猜。在我的最後一輪與他們在一起的時候,我的眼睛裏充滿了憤怒的淚水。但是,他們贏了。我想要在App Store中比我想要的更多。 – 2017-03-01 01:05:06
- 1. 如何在可可中關閉後重新顯示主窗口?
- 2. 關閉窗口後關閉可可應用程序
- 3. 如何在新窗口顯示後關閉當前窗口
- 4. 應用程序當前關閉關閉窗口提示
- 5. 關閉應用程序,而不顯示控制檯窗口
- 6. 用窗口'X'按鈕關閉窗體
- 7. 從winforms應用程序的子窗體中關閉主窗口
- 8. Errorprovider在使用窗口關閉按鈕(X)時顯示錯誤
- 9. 關閉子窗口後將WPF主窗口放在後臺
- 10. Selenium:彈出窗口關閉後用戶切換到主窗口
- 11. 窗口在創建(並顯示)後,立即關閉sepatarted線程
- 12. 關閉窗口之前顯示提示
- 13. 用Xlib關閉應用程序窗口
- 14. 如何關閉主窗口
- 15. C#/。NET:關閉主窗口
- 16. Mac OS X應用程序模式窗口不會關閉
- 17. 顯示消息框,同時通過使用窗口關閉選項(X)關閉該窗口
- 18. Vaadin 6.x如何關閉應用程序關閉時的外部窗口
- 19. 如何在主窗口關閉時關閉自定義窗口?
- 20. 最後一個窗口關閉後退出應用程序
- 21. ng-lightning模式窗口在關閉選項上不顯示'x'
- 22. 關閉應用程序的窗口(OSX)
- 23. 關閉窗口應用程序
- 24. Chrome應用程序關閉窗口
- 25. pyqt4第二個窗口關閉後主窗口崩潰
- 26. Excel窗口在C關閉後關閉Excel應用程序過程
- 27. 的OpenCV - 關閉圖像顯示窗口
- 28. Javascript,在窗口顯示lightbox關閉
- 29. 顯示和關閉多個窗口
- 30. 如何關閉ShowDialog窗口中的主窗口或應用程序
我正在嘗試做同樣的事情。我使用該模板創建了一個新應用程序。我不完全確定上述內容應該去哪裏。它應該在我的AppDelegate類中的某個地方?即使在關閉窗口後,該課程是否繼續「運行」? – bugfixr 2011-10-17 12:24:20
是的,是的。您的筆尖中有一個對象是應用程序委託的實例;它在你的程序運行的整個過程中通常是活着的。 – 2011-10-17 17:45:34
感謝您的支持!幫我!我差點忘了makeKeyAndOrderFront方法 – swdev 2013-01-18 09:25:32