【问题标题】:NSMenuItem is not enabled swiftNSMenuItem 没有快速启用
【发布时间】:2015-01-16 12:36:45
【问题描述】:

我的项目中有一个 NSMenuItem:

var statusBar = NSStatusBar.systemStatusBar()
var statusItem : NSStatusItem = NSStatusItem()
var menuItem : NSMenuItem = NSMenuItem()
var mainMenu = NSMenu()

override func viewDidLoad() {
    super.viewDidLoad()

    menuItem.title = "Holidays"
    menuItem.action = Selector("setWindowVisible:")
    menuItem.target = nil
    menuItem.keyEquivalent = "M"
    menuItem.enabled = true
    mainMenu.addItem(menuItem)

    statusItem = statusBar.statusItemWithLength(-1)
    statusItem.menu = mainMenu
    statusItem.title = statusItem.menu?.itemAtIndex(0)?.title

}

它将项目添加到菜单,但未启用:

http://i68.fastpic.ru/big/2015/0116/39/8e444aa8fb6f113bcdad2753e915b439.jpeg

并且选择器也是有效的,函数setWindowVisible存在于同一个类中:

func setWindowVisible(sender : AnyObject?) {
    self.window!.orderFront(self)
}

【问题讨论】:

    标签: macos swift nsmenuitem nsstatusitem


    【解决方案1】:

    目标必须是 self 而不是 nil。

    menuItem.target = self
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-02
      • 1970-01-01
      • 2022-08-07
      相关资源
      最近更新 更多