macos - quitar - Cómo crear una aplicación de barra de menús para Mac
como quitar iconos dela barra de menus en mac (6)
EDITAR: Esta es una buena aplicación de barra de menú ya preparada here ( fuente github ) por esta answer .
Me preguntaba cómo crear una aplicación de menú, ¿cuáles son los requisitos para hacerlo?
Vi una aplicación simple para la barra de menú era abrir enlaces usando su navegador, quiero crear algo similar a eso.
Esta es la aplicación que me gusta hacer similar.
Mail Notifr es otra aplicación Menubar de código abierto. Me ayudó un montón, especialmente cuando necesitaba averiguar cómo implementar el abierto al iniciar sesión. También disponible en la App Store .
NSStatusItem es lo que estás buscando. También agregue LSUIElement con valor de cadena de 1 a su Info.plist para ocultarlo de Dock.
BitBar es una aplicación en GitHub que puede "poner cualquier cosa en la barra de menú de Mac OS X".
Ejecuta shell u otras secuencias de comandos ejecutables (que llama complementos, vea los muchos ejemplos en el repositorio de complementos ) y muestra los resultados en la barra de menús. Puede escribir su propio complemento y ejecutarlo simplemente agregándolo a la "carpeta de complementos". Además de mostrar información, también puede ejecutar scripts bash predefinidos interactivamente desde los menús de complemento que defina.
Desde que publiqué esta respuesta, su popularidad se ha exploded (52 colaboradores actualmente) y ahora hay incluso una versión distribuible con la que puede empaquetar sus propios complementos.
Un ejemplo muy simple (no interactivo) para mostrar el precio de Bitcoin en vivo:
FlyCut es otra buena aplicación de código abierto que hace esto. (Licencia MIT.) Muy práctico también, lo uso varias veces al día.
Aquí hay un código que parece que puede ser relevante:
// Flycut/AppController.h
IBOutlet NSMenu *jcMenu;
// Flycut/AppController.m
statusItem = [[[NSStatusBar systemStatusBar]
statusItemWithLength:NSVariableStatusItemLength] retain];
[statusItem setHighlightMode:YES];
if ( [[DBUserDefaults standardUserDefaults] integerForKey:@"menuIcon"] == 1 ) {
[statusItem setTitle:[NSString stringWithFormat:@"%C",0x2704]];
} else if ( [[DBUserDefaults standardUserDefaults] integerForKey:@"menuIcon"] == 2 ) {
[statusItem setTitle:[NSString stringWithFormat:@"%C",0x2702]];
} else {
[statusItem setImage:[NSImage imageNamed:@"com.generalarcade.flycut.16.png"]];
}
[statusItem setMenu:jcMenu];
[statusItem setEnabled:YES];
Como Apple agregó la propiedad NSStatusBarButton
a NSStatusItem
en Yosemite, podemos implementar la aplicación NSStatusItem
mucho más simple. Acabo de crear un proyecto de muestra en github.
Descubrí que here un excelente punto de partida. Está maduro para bifurcar en Github.
Aunque funciona muy bien, lo hacen notar en su sitio ...
PS En Lion, Apple está agregando una nueva clase para popovers como en iOS. Por lo tanto, después de que se publique OS X 10.7, será mejor que confíe en las clases nativas de cacao donde sea posible. En otros casos, el proyecto Popup aún debería ser utilizable.