2017-07-08 15 views
0

我正在開發MacOS應用程序,每次點擊我的應用程序的關閉按鈕時,窗口關閉,但在DOCK中有應用程序圖標。我發現許多關閉窗口的應用程序將在點擊Dock中的圖標或激活窗口時重新打開。你能告訴我如何做到這一點?CloseButton如何能有這樣的性能

非常感謝您爲我們所做的一切,謝謝。

+1

可能複製[如何使應用程序窗口在單擊Dock圖標時打開?](https://stackoverflow.com/questions/814921/how-do-you-make-the-application-window-open-when-停靠點圖標被點擊),或者[OS X應用程序不會在Dock上圖標在Swift上按下新窗口](https://stackoverflow.com/questions/39400795/os-x-app-doesnt-推出全新的窗口式碼頭圖標,壓入-SWIFT)。 –

+0

請檢查它可以幫助您https://developer.apple.com/documentation/appkit/nswindowrestoration – Narayana

回答

0

已找到相應的方法,實際上並不複雜。我選擇了一個更簡單的方法。所有的 首先,我需要定義一個全局變量,這樣我就可以找到它再次 所以,我定義

Var mainWindowController: NSWindowController? 

而且我在的applicationDidFinishLaunching方法分配它。 再有就是applicationShouldHandleReopen方法的實現,這是唯一的一段代碼,可以實現

func applicationShouldHandleReopen(_ sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool 
{ 
    if !flag { 
     for window in sender.windows { 
      window.makeKeyAndOrderFront(self); 
     } 
    } 
    return true 
} 

非常感謝您對在前面的兩個朋友的幫助,謝謝