相关疑难解决方法(0)

keyDown 不能快速工作

那是我的代码:

override func keyDown(theEvent: NSEvent) {
    super.keyDown(theEvent)
    switch theEvent.character {
    case NSLeftArrowFunctionKey:
        println(1)
    case NSRightArrowFunctionKey:
        println(2)
    case NSDownArrowFunctionKey:
        println(3)
    case NSUpArrowFunctionKey:
        println(4)
    default:
        break
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我尝试识别是否按下了其中一个箭头按钮,但它始终不起作用。甚至函数 keyDown 似乎也从未被调用过。

这就是 中所写的viewDidAppear,如果这可以帮助您提供答案:

override func viewDidAppear() {
    super.viewDidAppear()
    self.view.window?.styleMask = NSClosableWindowMask | NSMiniaturizableWindowMask | NSTitledWindowMask
    var frame = self.view.window?.frame
    var newHeight = CGFloat(438)
    var newWidth = CGFloat(415)
    frame?.size = NSMakeSize(newWidth, newHeight)
    self.view.window?.setFrame(frame!, display: true)
    self.view.window?.backgroundColor = NSColor.darkGrayColor()
}
Run Code Online (Sandbox Code Playgroud)

viewDidLoad我只是添加一些不可选择和不可编辑的 NSTextFields 像这样:

var x = CGFloat(0)
    var y = …
Run Code Online (Sandbox Code Playgroud)

macos cocoa event-handling keydown swift

-2
推荐指数
1
解决办法
3911
查看次数

标签 统计

cocoa ×1

event-handling ×1

keydown ×1

macos ×1

swift ×1