Gemäß der Aufgabe müssen wir einen Bildbetrachter erstellen, genau wie Picasas. Bild in der Mitte, transluzenter schwarzer Hintergrund und wechselnde Bilder mit den linken / rechten Tasten.
Ich kann ein Bild anzeigen, das auf Unterfarbe gesetzt ist, und setze es auf einen durchscheinenden Rahmen, aber zusammen mit einem Rahmen wird das Bild durchscheinend. Was mache ich falsch?
%Vor%Ich habe es versucht
%Vor%hat nicht funktioniert
wenn ich einen booleschen und getesteten
genommen habe %Vor%ist nur sichtbare Rückgaben wahr, Rest sind falsch, sind diese irgendwelche Faktoren?
Das Problem ist, dass der JFrame
-Manager von Layout
ein BorderLayout
ist, das bedeutet, dass Ihr ShowImage
-Fenster den gesamten Bereich des Rahmens ausfüllt (in schwarz). Ich wette, wenn Sie den Hintergrund von ShowPane
auf rot geändert haben. Es würde stattdessen vollständig rot angezeigt werden
Nun können Sie sich Ein visueller Leitfaden für Layout-Manager ansehen oder ändern So funktioniert dein ShowPane
AKTUALISIEREN
Entschuldigung, ich bin nicht vertraut mit der neuen Transparenz-API in Java 7 (immer noch mit dem Java 6-Hack;))
Können Sie mir bestätigen, dass dies die Art von Effekt ist, nach der Sie suchen? Wo das gelesene Quadrat das Bild wäre (und der schwarze Hintergrund ist das Bild - nb, ich habe nur den Rahmen aufgenommen)
AKTUALISIEREN
Zuerst möchten Sie Window.isOpaque
Verwenden Sie als Nächstes Window.setOpacity nicht , es wird nicht erreichen, was Sie wollen. Der Hauptgrund dafür ist, dass der Opazitätswert auf den übergeordneten und die untergeordneten Elemente angewendet wird (dies zuerst durch mich).
Also, der Bildcode:
%Vor% Die ContentPane
. Im Grunde müssen wir die Farben-Engine "tricksen", um zu denken, wo transparent (nicht undurchsichtig) und dann unsere eigene Opazität zu malen
Es tut mir leid für meine frühere Antwort, aber ich hoffe, das macht das wieder wett;)
AKTUALISIEREN mit Schaltflächen
So habe ich es modifiziert
%Vor%
Tags und Links java image swing jframe image-viewer