Обработка события клавиши возврата и пользовательского NSView

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

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

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

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

Любое из этого работает. Любая идея?

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


person Azpiri    schedule 31.05.2011    source источник


Ответы (1)


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

person Azpiri    schedule 13.06.2011