Tengo esta aplicación que muestra un elemento en la barra de estado del sistema, y uno de los elementos es una vista personalizada con un campo NSTRutón y un NSButton. Cuando el usuario hace clic en el elemento de la barra de estado, muestra el menú, el usuario ingresa texto y presiona el botón. Esto desencadena una acción que muestra una ventana.Ocultar NSMenu programáticamente de NSStatusItem
El problema que estoy teniendo ahora es que, cuando se presiona el botón, desencadena la acción, pero el menú permanece visible. Quiero ocultar el menú, porque la acción ya se ha procesado.
He buscado a través de la API, pero no he podido encontrar cómo hacerlo.
¿Alguna idea?
Esta es la forma en que estoy creando el menú:
NSStatusBar *bar = [NSStatusBar systemStatusBar];
self.statusItem = [bar statusItemWithLength:NSVariableStatusItemLength];
[statusItem setImage:[NSImage imageNamed:@"icon_status_bar.png"]];
[statusItem setHighlightMode:YES];
NSMenuItem *textInputItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""];
[textInputItem setView:myCustomView]; // created on the Nib file...
NSMenu *menu = [[NSMenu alloc] initWithTitle:NSLocalizedString(@"statusBarMenuTitle", @"")];
[menu addItem:textInputItem];
[statusItem setMenu:menu];
[textInputItem release];
[menu release];
Gracias! Nunca lo hubiera encontrado con ese nombre ... –