Ich habe eine NSStatusItem
, die ordnungsgemäß in der MenuBar angezeigt wird. Eines der Elemente (wenn es angeklickt wird) zeigt ein modales NSWindow aus meiner Anwendung an, das eine einmalige Aufgabe ausführen soll und dann verschwinden soll. (ZB der Benutzer gibt ein wenig Text ein, klickt auf "Speichern", und das modale NSWindow verschwindet.)Anzeigen eines modalen NSWindow, ohne die anderen Anwendungsfenster zu aktivieren
Das Problem tritt auf, wenn die Anwendung im Hintergrund ausgeführt wird. Das modale Fenster wird ordnungsgemäß oberhalb der Anwendung angezeigt, die im Vordergrund ausgeführt wird. Wenn der Benutzer jedoch auf die Schaltfläche "Speichern" klickt, werden die übrigen Fenster der Anwendung ebenfalls aktiviert. Dies ist unerwünscht, da der Benutzer dann auf die von ihm verwendete App zurückklicken muss. (Zerstörung der Bequemlichkeit des NSStatusItem.) Ich bin die Anzeige des modalen Fenster mit:
[myWindow setFrame:finalRect display:YES animate:NO];
[myWindow setLevel:NSPopUpMenuWindowLevel];
[NSApp runModalForWindow:myWindow];
Gibt es eine Möglichkeit Klicks/Ereignisse in meinem Popup-Fenster aus, woraufhin der Rest der Anwendung zu verhindern, aktiv zu werden? Oder eine Möglichkeit, NSApp wissen zu lassen, dass dieses bestimmte Panel den Rest der App nicht automatisch aktivieren soll? Vielen Dank!
Funktioniert perfekt (und einfach), danke! –