NSTableView允许选择更改而不成为第一响应者

时间:2017-04-14 07:21:11

标签: macos cocoa nstableview

我有一个分割视图的窗口。左边是NSTableView,右边是自定义视图。

当我的自定义视图在“命令模式”中处于活动状态时我需要它保持第一响应者状态,以便在按下转义键时它可以收到cancelOperation:事件。但我确实希望用户能够在表格视图中更改选择。

不幸的是,只要我的自定义视图拒绝退出第一响应者状态,表格视图就不会响应。

如何确保表格视图允许更改选择而不成为第一响应者?或者,我如何确保cancelOperation:事件已发送到我的自定义视图,而它不是第一响应者?

1 个答案:

答案 0 :(得分:0)

  

表格视图允许更改选择而不成为第一响应者

不要这样做。这会让用户感到困惑。表视图应成为第一响应者。

  

或者我如何确保将cancelOperation:事件传递到我的自定义视图,而不是第一响应者

使用等效密钥Escape在窗口中放置取消按钮。或者,如果您不想要按钮,请让响应程序链中的对象(视图控制器,窗口控制器)通过实现stat -c "%d" "${Folder}"来捕获转义键并告知自定义视图取消。