如何响应keyUp事件?

时间:2020-09-16 07:45:25

标签: swift macos swiftui nswindow

我正在使用SwiftUI为MacOS编写一个简单的菜单栏应用程序。我希望应用程序响应转义键。使用到目前为止我拼凑的东西,我会得到这样的东西:

extension NSWindow {
    open override func keyDown(with event: NSEvent) {
        print("keyDown: \(event.keyCode)")
    }
    open override func keyUp(with event: NSEvent) {
        print("keyUp: \(event.keyCode)")
    }
}


class AppDelegate: NSObject, NSApplicationDelegate {
    func applicationDidFinishLaunching(_ aNotification: Notification) {

    //  etc

    }
}

AppDelegate创建并启动一个NSPopover

运行应用程序时,我确实收到了keyUp消息,但是由于某些原因却没有收到keyDown

问题是我该如何从AppDelegate内响应密钥?最终,我想使用转义键关闭弹出窗口,但我也想探索其他可能性。

0 个答案:

没有答案