什么是适当的方式来响应NSOutlineView中的删除键

时间:2010-02-10 03:51:42

标签: cocoa

当用户按下删除键时,我想从我的NSOutlineView中删除一个项目。唯一的方法是覆盖NSResponder的keyUp方法吗?我希望有更高级别的解决方案。

3 个答案:

答案 0 :(得分:5)

没有子类化就可以做到这一点。将NSOutlineView的nextResponder(使用-setNextResponder:)设置为您的控制器。在控制器类中,您可以覆盖-keyDown:(或-keyUp:,然后在控制器类中处理该事件。

答案 1 :(得分:1)

从10.10开始,您不需要对视图进行子类化以覆盖keyDown(_:)keyUp(_:)。这是因为NSViewController继承自NSResponder,现在自动添加到响应者链中。这意味着您可以覆盖视图控制器子类中的方法,这通常更方便。

答案 2 :(得分:0)

我认为在子类中覆盖-keyDown:-keyUp:是唯一的方法。