Как подключить словарь OS X

на osx lion вы можете control-command-d или тройным нажатием на слово, на которое указывает указатель мыши в любом приложении, для запуска словаря всплывающих окон. Я хочу сделать приложение, чтобы отслеживать слова, которые пользователь ищет в словаре.

Как я могу наблюдать событие, когда пользователь делает control-command-d или трижды нажмите, чтобы запустить словарь popover?

Я понимаю, что конкретный API для этогоHIDictionaryWindowShow.

Ответы на вопрос(1)

popoverDidShow:

- (void)awakeFromNib {
    NSNotificationCenter* notificationCenter = [NSNotificationCenter defaultCenter];
    [notificationCenter addObserver:self selector:@selector(popoverDidShow:)
                            name:NSPopoverDidShowNotification object:nil];
}

// dictionary is shown or another NSPopover
- (void)popoverDidShow:(NSNotification*)notify { 
    //your code
} 
 hollow730 июн. 2012 г., 22:18
отличная идея. но как бы вы узнали, что поповер был из HIDictionaryWindowShow? Я имею в виду, что это может быть просто еще один поповер где-нибудь еще по всей системе.
 30 июн. 2012 г., 22:49
Использоватьname способ узнать, с каким уведомлением вы имеете дело, когда получаете уведомление,[notify name] , Используйте информацию в NSDictionary[notify userInfo] , Использоватьobject связано с уведомлением[notify object] знатьdescription, attributeKeys или другие методы

Ваш ответ на вопрос