Обработка события возврата ключа и Custom NSView - PullRequest
0 голосов
/ 31 мая 2011

У меня есть собственный NSView в моем приложении Mac, и я хочу выполнить действие при нажатии клавиши Return.

Моей первой попыткой было найти сообщение о действии NSResponder для этого ключа (например, -complete: для ключа ESC). Кажется, что это -insertNewline: но это не работает для NSView.

Второй, переопределить -keydown: и проверить keyCode события. Работает, но я замечаю, что keyCode - это просто положение клавиши на клавиатуре, и разные клавиатуры (модели и языки) будут возвращать разные коды клавиш для клавиши Return (это правильно?).

Последним был подкласс моего представления как NSControl и установка селектора на perfom как действие (также устанавливающее цель) в методе -awakeFromNib подкласса.

Все это работает. Любая идея?

Заранее спасибо

1 Ответ

0 голосов
/ 13 июня 2011

Наконец -insertNewline: работает отлично. Проблема состояла в том, что я переопределил keydown, используя «if» с «-interpretKeyEvents:» (плохое смешивание, когда условие не позволяло выполнить insertNewline) ...

...