tryToPerform: with: не вызывается, когда вызывается keyDown: - PullRequest
0 голосов
/ 28 декабря 2011

У меня есть NSViewController, который я вручную помещаю в цепочку респондента, вызывая

self.nextResponder = self.view.nextResponder;
self.view.nextResponder = self;

Когда пользователь нажимает клавиши внутри представления, я могу успешно получать keyDown: сообщений. Однако по какой-то причине я не получаю сообщения tryToPerform:with: и validateMenuItem:, когда пользователь получает доступ к панели MainMenu. Что мне здесь не хватает?

1 Ответ

0 голосов
/ 28 декабря 2011

Оказывается, что на самом деле сообщение respondsToSelector: отправляется первым до вызова validateMenuItem:. И если NSViewController на самом деле не отвечает на сообщение, validateMenuItem никогда не вызывается. Тем не менее, за весь процесс я никогда не видел, чтобы tryToPerform:with: вызывали вообще. Не уверен, почему, собираюсь заглянуть в Руководство по программированию событий Какао и доложить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...