在自定义菜单项时,在字段编辑器中编辑文本会禁用⌘S

时间:2016-05-25 09:25:01

标签: macos nstextview appkit

当我绑定"文件>保存⌘S"自定义IBAction它工作正常,除非我使用窗口的字段编辑器以编程方式编辑某些内容。 (NSTableHeaderCells, specifically.

当光标位于任何NSTextField时,⌘S仍然处于激活状态。这就是我想要的。

当光标位于字段编辑器(基于NSText)时,⌘S被取消激活。只有当我将MainMenu.nib中的连接更改为" First Responder>时才会发生这种情况。 myCustomSaveMethod:"

在这种情况下,如何在字段编辑器中启用⌘S-saving?

1 个答案:

答案 0 :(得分:0)

发生这种情况的原因是“第一响应者”是响应者链中当前视图之上的任何内容。手动调用的字段编辑器将插入到NSWindowController下面的响应程序链中。 myCustomSaveMethod:在子视图控制器中实现,该控制器是响应者链的一部分,因此方法定义不可用于字段编辑器。

myCustomSaveMethod:移动到链中的响应者,表视图和字段编辑器共享(例如NSWindowController)就像魅力一样。
¯\ _(ツ)_ /¯