我试图通过swift XCode中的函数获取此事件

siv3szwd  于 2023-04-28  发布在  Swift
关注(0)|答案(1)|浏览(79)

我想通过一个活动。通过函数的键码事件
我使用这个代码:

NSEvent.addLocalMonitorForEvents(matching: .keyDown) { //monitors which keys are pressed down.
        self.keyDown(with: $0)
        return $0
override  func keyDown(with event: NSEvent) { // Detects which keys are being hit.
                
        
       keydownlook().keyPressed("here")  <-- calling a function that is in another class

        
  }

我需要传递事件而不仅仅是结果,这里说的。有什么简单的方法吗?

kxkpmulp

kxkpmulp1#

例如,你可以使用闭包来实现这一点:

class Test {
    var keyEventHandler: ((NSEvent) -> Void)?

    func keyPressed(event: NSEvent) {
        keyEventHandler?(event)
    }
}

使用方法:

let test = Test()

test.keyEventHandler = { event in
    print(event)
}

相关问题