Cocoa - Kein Dock Icon,kein MainMenu

Diskutiere mit über: Cocoa - Kein Dock Icon,kein MainMenu im Mac OS X Entwickler, Programmierer Forum

  1. Stalkingwolf

    Stalkingwolf Thread Starter MacUser Mitglied

    Beiträge:
    2
    Zustimmungen:
    0
    Registriert seit:
    11.08.2002
    Und zwar möchte ich ein Programm schreiben, was nur ein Menu in der rechten oberen Ecke von OSX läuft. Dort wo auch die Uhr, Batterie usw angezeigt wird.
    Leider habe ich keine Ahnung wie ich das Dock Icon ausblende, kein MainMenu habe und mein NSMenu genau dort oben plaziere.
    In meinem Buch "Cocoa Programming for Mac OS X" konnte ich nichts finden und im Netz genau so wenig. Hab nämlich nicht mal nen Schimmer wonach ich suchen soll.

    Ich habe diverse Programm, LaunchBar, WeatherPop, die ein Menu dort ablegen, ich habe mir auch die Nib Files im Interface Builder angeschaut, wurde aber nicht schlau daraus.

    Vielleicht kann mir ja hier jemand helfen.
    Gruß Sven
     
  2. mdev

    mdev MacUser Mitglied

    Beiträge:
    24
    Zustimmungen:
    0
    Registriert seit:
    22.08.2002
    Diese Art von Menu nennt sich "Menu Extra", und greift haeufig auf eine von Apple als "private" markierte API zurueck. Apple raet (aus sehr gutem Grund) davon ab, diese API zu nutzen.

    Sicherer ist der Ansatz, sich per [NSStatusBar systemStatusBar] einen Zeiger auf die Statusanzeige des Systems zu holen, und dort dann die Dinge einzufuegen, die man haben will.

    Um zu Verhindern, dasz die Applikation im Dock auftaucht gibt es zwei Moeglichkeiten, die beide in der Info.plist einzutragen sind:

    - NSUIElement auf 1 setzen
    Damit bekommt deine Applikation allerdins den Fokus (acceptFirstResponder auf NO setzen, um das zu Verhindern) Das ist allerdings von der Version des AppKits abhaengig, ich weisz nicht, ob und wo Apple das gefixt hat

    - NSBGOnly auf 1 setzen
    Damit bekommt deine Applikation den Fokus nicht, allerdings wirst du dann ein Problem haben, wenn du ein Fenster zum Beispiel fuer Voreinstellungen anzeigen willst, da du nicht FirstResponder werden kannst
     
  3. Stalkingwolf

    Stalkingwolf Thread Starter MacUser Mitglied

    Beiträge:
    2
    Zustimmungen:
    0
    Registriert seit:
    11.08.2002
    thx.
    habs anders gelöst.

    myMenu = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength] retain];
    [myMenu setTitle:mad:"<haltEinTitel>"];
    [myMenu setHighlightMode:YES];
    [myMenu setMenu:<irgendEinMenü>];

    aus dem .h:
    NSStatusItem* myMenu;

    kann ich zwar nicht mit Apfel verschieben, aber es funzt.

    Sven
     
Die Seite wird geladen...
Ähnliche Themen - Cocoa Kein Dock Forum Datum
Cocoa GUI für Scanimage --> Wie NSTask beenden?? Mac OS X Entwickler, Programmierer 21.09.2014
textField darf nicht leer sein - Cocoa Applescript Application Mac OS X Entwickler, Programmierer 13.05.2014
Cocoa und das Dateikennzeichen 'Archive' Mac OS X Entwickler, Programmierer 29.05.2013
cocoa programming for Mac OS X tableView ich verzweifle! Mac OS X Entwickler, Programmierer 06.05.2012
Mit Cocoa eine SQL Datenbank anbinden Mac OS X Entwickler, Programmierer 28.05.2011

Diese Seite empfehlen

Benutzerdefinierte Suche