Transparentes Java-Fenster

8

Ich versuche ein kreisförmiges Fenster zu erstellen, das der Maus folgt und Klicks an die darunter liegenden Fenster weitergibt.

Ich habe das mit Python und Qt gemacht (siehe Python-Overlay-Fenster ), aber dann wechselte ich zu Java und Schwingen Ich kann das Fenster jedoch nicht transparent machen. Ich habe versucht diese Methode , aber es funktioniert nicht, aber ich denke, dass mein System unterstützt die Transparenz, denn wenn ich Screencast-O-Matic (das in Java ist) starte, ist das Rechteck tatsächlich transparent.

Wie kann ich so etwas erreichen? (Ich bin auf Linux KDE4)

    
Lord Spectre 07.08.2012, 11:25
quelle

4 Antworten

9

Warum funktioniert das Java-Lernprogramm nicht So erstellen Sie transluzente und geformte Fenster funktioniert nicht ? Verwenden Sie die neueste Version von Java 6 oder Java 7? In der Mai / Juni-Ausgabe des Java-Magazins gab es ein Tutorial zu geformten und transparenten Fenstern, die Java 7 benötigten Wahrscheinlich werden Sie sich für das Java-Magazin anmelden müssen, um es lesen zu können. Sehen Sie, ob Sie dies auf Ihrem System ausführen können:

%Vor%     
Thorn 07.08.2012 12:01
quelle
3

Wenn Sie Java 6 verwenden, müssen Sie die privaten API AWTUtilities verwenden. Weitere Informationen finden Sie in der API für Java SE 6 Update 10 .

BEISPIEL

Dies ist ein bisschen schneller Hack, aber es bekommt die Idee über

%Vor%

Unter Windows 7 wird

erzeugt

Unter Java 6

Unter Java 7

    
MadProgrammer 07.08.2012 20:32
quelle
3

Ich schätze, das wird funktionieren, ich habe es bereits versucht. Um einen JFrame oder ein Fenster transparent zu machen, müssen Sie zuerst Undecorated(true) des Rahmens aufheben. Hier ist ein Beispielcode:

%Vor%

Das einzige Problem ist, dass Sie Ihren eigenen Code zum Schließen und Minimieren mit Schaltflächen hinzufügen müssen.

    
rajan ks 09.01.2014 02:47
quelle
2

Wenn Sie es selbst machen möchten, ohne eine externe Lib zu verwenden, könnten Sie einen Thread starten, der Folgendes ausführt:

  • setzt das transparente Fenster unsichtbar
  • Erstellen Sie einen Screenshot des Desktops
  • setze diesen Screenshot als Hintergrundbild deines Fensters

Oder Sie könnten JavaFX

verwenden     
Quick n Dirty 07.08.2012 11:39
quelle

Tags und Links