Die Entscheidung, welches Fenster wie und in welchem Layer angezeigt wird, trifft der Window-Manager. Nicht deine Anwendung.
Das ist auch gut so, denn als Benutzer möchte ich nicht, dass Anwendungen das können.
Über welchen Window-Manager bzw. über welches Betriebssystem sprechen wir?
Es muss allerdings möglich sein, denn es gibt immer wieder Anwendungen, welche ein Fenster als Hinweis über allem anzeigen können. Das ist auch gut so, schließlich gibt es Infos, welche angezeigt werden müssen, obwohl die auslösende Anwendung gerade von einer anderen Anwendung verdeckt werden kann (eben wie in meinem Fall) !
Die Meinung, dass das gut ist, teile ich nicht.
Mein letzter Kentnissstand ist, dass Microsoft es explizit erschwert genau das Verhalten auszulösen. Wird ein Fenster aktiviert, das nicht zu dem Prozes gehört, in dem der Benutzer gerade arbeitet, wird das durch in der Taskleiste dadurch angezeigt, das das Fenster als "hier passiert etwas" markiert wird.
_Das_ ist gut so. Denn es wäre eine gar grausige Welt, in der es möglich wäre jede Sekunde ein anderes Fenster aktiv zu schalten, während ich in einem ganz anderen Programm arbeite.
Du kannst noch versuchen das Fenster mit "activateWindow" oder "show" nach vorne zu holen - je nachdem welchen Zustand sie vorher hatten.
Ich würde aber empfehlen den Weg über die OS-Notifcations zu nehmen.
Okay, ich werde mir mal alle Vorschläge anschauen.
Zum Verständnis, es handelt sich um 'eine Art' Messagebox, die von meiner Anwendung über wnd.exec() aufgerufen wird. Die Taskleiste ist mir allerdings zu wenig. Der das System nutzende Kollege soll SOFORT informiert werden. Es ist nun mal so.
Du musst dich nicht rechtfertigen.
Am Ende entscheidet es hoffentlich der Fenstermanager, der das Verhalten unterbindet.
Ich stelle mir gerade vor, wir der Kollege intensiv an etwas arbeitet und dann das nervige "pling pling" des Fehlersounds, weil dort, wo er tippen will, gar keine Eingabe erwartet wird, sondern ein Message-Fenster aufgetaucht ist.
Oder noch besser. Wie er ein Passwort eingeben will und das dann in der anderen Anwendung landet.
Deshalb möchte _ich_ solche Anwendungen sicher nicht haben.