2012-06-26 22 views
6

en osx lion, puede controlar-comando-d o tocar tres veces en una palabra a la que apunta su mouse en cualquier aplicación para iniciar un diccionario de popover. Quiero hacer una aplicación para seguir las palabras que un usuario está buscando en el diccionario.Cómo colgar el diccionario OS X

¿cómo observo el evento donde el usuario controla-comando-d o toca tres veces para abrir el diccionario de popover?

Entiendo que la API específica para esto es HIDictionaryWindowShow.

Respuesta

3

Puede utilizar 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 
} 
+0

buena idea. pero ¿cómo sabrías si el popover era de HIDictionaryWindowShow? Quiero decir que podría ser simplemente otro popover en cualquier otro lado del sistema. – hollow7

+0

Utilice el método ** name ** para averiguar qué tipo de notificación está tratando cuando reciba una notificación, '[notificar nombre]'. Use las informaciones en NSDictionary '[notificar userInfo]'. Utilice el ** objeto ** asociado con la notificación '[notificar objeto]' para conocer 'descripción, teclas de atributo' u otros métodos – jackjr300