Gibt es in Java eine Möglichkeit, ein Fenster zu haben, das "Immer im Vordergrund" ist, unabhängig davon, ob der Benutzer den Fokus auf eine andere Anwendung wechselt? Ich habe das Web durchsucht und alle Lösungen basieren auf einer Art JNI-Schnittstelle mit nativen Bindungen. Wirklich, das kann nicht der einzige Weg sein, es zu tun? .. oder doch?
java
user-interface
swing
awt
Laplie Anderson
quelle
quelle
Bei meiner Beobachtung stellte ich fest, dass das AlwaysOnTop-Privileg für den neuesten Prozess erteilt wurde, der immer an der Spitze sein musste.
Wenn Sie also eine Anwendung haben, die
setAlwaysOnTop(true)
und später eine andere Anwendung diese Option verwendet, wird die Berechtigung der zweiten Anwendung erteilt. Um dies zu umgehen, habe ich dassetAlwaysOnTop(false)
undsetAlwaysOnTop(true)
immer wieder eingestellt, wenn ein Fenster über dem aktuellen Fenster angezeigt wird.Ich habe es mit checked
wordweb
inwindows
. WordWeb ist eine der Anwendungen, die dieAlwaysOnTop
Option aus dem verwendetOS
Ich bin mir nicht sicher, ob es mit Ihrem Spielszenario richtig funktioniert.
Warnung : Ich bin mir der Nebenwirkungen nicht bewusst.
Hier ist das Codebeispiel:
quelle
Verwenden Sie nicht setFullScreenWindow, sondern ermitteln Sie die Bildschirmgröße und dann setSize, und alles wird in Ordnung sein.
quelle