我的窗口上有一个按钮,该按钮在界面生成器中设置为具有等效于 enter 的键,但是在将内容视图从使用 IKImageBrowserView 切换到 NSCollectionView 后,keyEquivalent 将被忽略。
keyEquivalent 事件被“特殊”处理,应该非常简单。
我正在对 NSCollectionViewItem 和项目视图进行子类化,但是当我覆盖该方法时,这些子类都没有获得 performKeyEquivalent:theEvent。
默认按钮旁边有一个取消按钮,并映射到 esacpe 键。取消继续起作用,但默认按钮不起作用。
我怎样才能知道在哪里处理输入键事件?
编辑:
实际上,我在用于了解 NSCollectionView 的示例应用程序中发现了相同的问题。我在窗口底部添加了一个默认按钮,发现return没有触发按钮但enter(fn + return)确实触发了按钮。
来自 Apple 的 IconCollection 示例应用程序
关于在这个例子中窃取返回键事件的任何想法?
编辑:
我在这里发布了一个示例项目:https ://github.com/watkyn/NSCollectionViewIssue 。为什么默认按钮不起作用?