2

我有一个NSMenuItem我想使用等效键 Command-Option-C 的键。但是,当我在 IB 中设置等效键时,它不会在应用程序实际运行时与菜单项关联。该条目没有可见的等效键,并且该命令不会调用该条目。其他关键等效项,如 Shift-Control-C,确实有效。我尝试使用的那个不与应用程序中的任何其他等效键冲突。

什么可能导致这个看似随机的问题?

4

3 回答 3

1

有问题的菜单项是否可能是一个“特殊”菜单项,它可能会在启动时被系统替换?如果是这样,了解您是否能够在不同的、可能不太有趣的菜单项上设置相同的键盘快捷键会很有帮助。

我对哪些菜单项可能会得到这种处理并没有真正的权威理解,但我怀疑例如“帮助”菜单、“应用程序”菜单或许多应用程序中常见的其他菜单项可能会被调整或甚至动态重新生成,更改您在笔尖中指定的内容。

我首先要采取的最简单的解决方法是在 nib 加载后直接在代码中的菜单时间调用 setKeyEquvialent:。我无法从你的 Twitter 总结中看出你是否已经尝试过这个,而且它也失败了。

于 2011-08-01T21:51:22.873 回答
0
  1. 检查菜单项上的标签。如果设置为某些值,它可能会被 Cocoa 覆盖
  2. 检查您的系统首选项是否覆盖键绑定
  3. 检查键绑定在菜单层次结构的其他地方不存在,尤其是在编辑菜单中
于 2011-08-01T22:53:19.443 回答
0

Command-Option-C 在这里工作得很好。可能是您在使用相同组合键的键盘系统偏好设置中设置了自定义键盘快捷键吗?这将覆盖应用程序自己的快捷方式。

于 2011-07-29T20:36:02.070 回答