【发布时间】:2016-05-28 18:08:33
【问题描述】:
我将Menu-Object 连接到Window Controller。为了调用Window Controller,我添加了一个快捷方式。但是在多次按下快捷方式时,会打开多个窗口。如何调用函数,计算窗口数量,如果是0,按下快捷键会打开Window Controller?
我使用 Swift 作为编程语言。
【问题讨论】:
标签: swift cocoa window nswindowcontroller
我将Menu-Object 连接到Window Controller。为了调用Window Controller,我添加了一个快捷方式。但是在多次按下快捷方式时,会打开多个窗口。如何调用函数,计算窗口数量,如果是0,按下快捷键会打开Window Controller?
我使用 Swift 作为编程语言。
【问题讨论】:
标签: swift cocoa window nswindowcontroller
您可以拥有一个静态变量,该变量在您的视图成功初始化时递增,并且在视图的 deinit 时递减。然后,您可以在初始化之前检查保护语句中的值或根据该变量设置菜单可用性。
class WindowController: NSWindowController {
static var count = 0
override func windowDidLoad() {
WindowController.count += 1
}
deinit {
WindowController.count -= 1
}
}
func createWindow() {
guard WindowController.count = 0 else { return }
// Create window here
}
【讨论】:
Menu-Object 与viewDidLoad()-Function 连接起来,我必须检查 var 是否为 0?或者是什么意思?总之,一个例子真的可以帮助我:)
Menu-Object与函数连接起来?