簡體   English   中英

NSDocument 的菜單欄沒有出現

[英]Menu bar for NSDocument doesn't appear

我將故事板移植到另一個使用 xibs 的項目中(是的,該應用程序的部署目標是 10.9)。 這個故事板連接到一個 NSDocument 子類(僅在 10.10+ 上可用),它似乎按預期工作得非常好......但唯一的問題是主菜單僅在窗口的文檔落后於其他窗口(例如 Finder 的)時出現然后我把它放回前面。 我的問題是:如何確保主菜單連接到我的文檔?

  override func validateMenuItem(_ menuItem: NSMenuItem) -> Bool {
    Swift.print("validateMenuItem")
    return super.validateMenuItem(menuItem)
  }

  override func makeWindowControllers() {
    let wc = DocumentWC.loadFromNib()

    self.addWindowController(wc!)
  }

不確定是什么導致了問題(項目很大),也許您可​​以將其稱為補丁而不是修復:

override func viewDidAppear() {
  super.viewDidAppear()
  if !self.menufixed {
    self.menufixed = true // just to call it once 
    let win = self.view.window
    win?.resignMain()
    win?.becomeMain()
    win?.orderFrontRegardless()
    win?.resignKey()
    win?.becomeKey()
    win?.orderFrontRegardless()
    NSApp.activate(ignoringOtherApps: true)
  }
}

當視圖和窗口出現時,PS 添加到視圖控制器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM