Cocoa Responder Chain и контекстное меню Click

У меня есть основанный на представлении NSTableView заполненный пользовательский подкласс NSTabelCellView, который является самым нижним объектом в иерархии представлений (без подпредставлений). Я переопределил метод mouseDown: для перехвата щелчков мыши. Это нормально, когда пользователь щелкает левой кнопкой мыши представление ячейки, однако, когда они щелкают правой кнопкой мыши представление ячейки, этот метод почему-то никогда не вызывается, и каким-то образом меню, связанное с представлением таблицы, все еще отображается, даже если представление ячейки должно быть первый объект для ответа. Кто-нибудь знает, почему это так? Как я могу перехватывать правые клики в представлении?


person Tony    schedule 18.01.2012    source источник


Ответы (1)


Существуют разные группы методов для каждой из трех основных кнопок мыши.

В любом случае, вы, вероятно, не захотите реализовывать это на таком низком уровне. Если контекстное меню одинаково во всем табличном представлении, просто установите его menu. Если вы хотите, чтобы он отличался для каждой ячейки, вы можете попробовать установить представление ячейки menu.

person Peter Hosey    schedule 21.01.2012