0

我的 mac 应用程序中有一个自定义 NSView,我想在按下 Return 键时执行一个操作。

我的第一次尝试是找到此键的 NSResponder 操作消息(如 -complete: for ESC 键)。似乎是 –insertNewline: 但它不适用于 NSView。

第二个,覆盖 -keydown: 并检查事件的 keyCode。有效,但我注意到 keyCode 只是键盘中键的位置,不同的键盘(型号和语言)将为 Return 键返回不同的键码(正确吗?)。

最后一个是将我的视图子类化为 NSControl,并在子类的 -awakeFromNib 方法中将选择器设置为执行操作(也设置目标)。

这一切都有效。任何的想法?

提前致谢

4

1 回答 1

0

最后——insertNewline:完美运行。问题是我使用带有“-interpretKeyEvents:”的“if”覆盖了keydown(当条件不允许执行insertNewline时混合不好)......

于 2011-06-13T15:06:23.543 回答