Wie stelle ich den JFrame-Hintergrund transparent aber JPanel oder JLabel-Hintergrund undurchsichtig ein?

Gemäß der Aufgabe müssen wir einen Bildbetrachter wie Picasas erstellen. Bild in der Mitte, durchscheinender schwarzer Hintergrund und wechselnde Bilder mit den Links / Rechts-Tasten.

Ich kann ein Bild anzeigen, indem ich es auf Grundierung und auf durchscheinenden Rahmen stelle, aber zusammen mit dem Rahmen wird das Bild durchscheinend. Was mache ich falsch.

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();   

JFrame f1 = new JFrame("ShowImage");
f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f1.setSize(dim);

f1.setUndecorated(true);
f1.setOpacity(0.5f);
ShowImage panel = new ShowImage();
panel.setBackground(Color.black);

f1.setContentPane(panel); 
f1.setVisible(true);  

Ich habe es versucht

si.setOpaque();   
si.setBackground(Color.black);
si.setForeground(Color.red);

keiner hat funktioniert

als ich einen Booleschen genommen und getestet habe

si.isDisplayable();
si.isVisible();
si.isShowing();

Nur sichtbare Renditen sind wahr, Rest sind falsch. Tragen diese Faktoren dazu bei?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage