Можно ли обнаружить щелчок при нажатой клавише Ctrl (контекстное меню) запрос в событии mouseDown?

Чтобы убедиться, что handler1 всегда выполняется перед handler2 , вы можете использовать следующий подход:

Каждый раз, когда handler1 завершив то, что должен сделать, он [выдаст сигнал Service, в котором оба Handler работают, чтобы] немедленно запустить handler2 .

handler2 (или Service) будет разрешено запланировать повторное выполнение Runnable на следующие пять раундов. Вы можете использовать некоторый тип обратного отсчета, чтобы отслеживать оставшиеся раунды. Последний «независимо управляемый» раунд начнется примерно через 25 секунд после начального раунда. После этого раунда до handler1 может быть выдана следующая команда запуска для handler2 .

5
задан Ned Batchelder 9 November 2008 в 18:59
поделиться

2 ответа

Если Вы используете AppKit, и Вы хотите обнаружить щелчок правой кнопкой в своем представлении, необходимо переопределить -[NSResponder rightMouseDown:].

13
ответ дан 18 December 2019 в 05:50
поделиться

В целом,-rightMouseDown: должен быть назван автоматически, но я видел ситуации, где это не - они могут быть исправлены в Leopard.

Но прямо сейчас, в-mouseDown: Я проверяю, снижается ли клавиша CTRL, с помощью этого кода:

- (void)mouseDown:(NSEvent *)event;
{
    if (event.modifierFlags & NSControlKeyMask)
        return [self rightMouseDown:event];

...
}

- Wil

15
ответ дан 18 December 2019 в 05:50
поделиться