处理双击鼠标事件并返回按下NSTableView

时间:2013-03-12 10:03:54

标签: objective-c cocoa nstableview

好的,我需要的是非常简单的,尽管我仍然没有找到具体的内容。

我希望能够:

  • 跟踪双击事件
  • 跟踪NSTableView何时聚焦,并按下“返回”键。

你会怎么做?

P.S。我已经了解了NSTableViewDelegate规范,但我找不到任何有用的东西。

2 个答案:

答案 0 :(得分:5)

要进行双击,您需要执行以下操作:

-(void)awakeFromNib{
    [self.tableView setDoubleAction:@selector(thisMethod)];
    //And if you wish to take selector dynamically, I guess you know how to do :)
}

-(void)thisMethod{
    NSLog(@"double clicked");
}

答案 1 :(得分:0)

对于return事件,请子类化NSTableView并覆盖keyDown:

Swift 5.x:

    override func keyDown(with event: NSEvent) {
        if event.characters?.count == 1 {
            let character = event.keyCode
            switch (character) {
            // 36 is return
            case UInt16(36):
                print("return: \(event)")
            default:
                print("any other key: \(event)")
            }
        } else {
            super.keyDown(with: event)
        }
    }