Ich habe eine App, die ein NSStatusItem
verwendet. Auf kleinen Bildschirmen ist nicht viel Platz in der Statusleiste. Wenn ein Benutzer zu einer Anwendung mit vielen Menüpunkten wechselt, wird mein Statuselement ausgeblendet. Gibt es eine Möglichkeit, darüber benachrichtigt zu werden?
Was ich bisher versucht habe:
NSNotification
ausgelöst wurde: Nein statusView
aus der Ansichtshierarchie entfernt wurde: Nein isHiddenOrHasHiddenAncestor
: Nein Hier ist der Code, den ich zum Erstellen des Statuselements verwende.
%Vor%Es ist ziemlich schlau von Ihnen zu erkennen, dass wenn ein Statuselement ausgeblendet ist, sein Fenster in den Hintergrund verschoben wird.
Jetzt ist die gesuchte Benachrichtigung: NSWindowDidResignTypeNotification (oder NSWindowDidResignMainNotification abhängig vom Kontext Ihrer Anwendung
Eine klare Erklärung für den Unterschied zwischen einem Schlüsselfenster und einem Hauptfenster finden Sie unter dies .
Tags und Links objective-c macos cocoa nsstatusitem appkit