How to make JFrame transparent?

2019-02-13 04:42发布

问题:

How to make JFrame transparent? I want to make my JFrame transparent. User should see the background when my JFrame is on top of it.

回答1:

I found another solution.

Set the background color of your frame to

// Set the frame background color to a transparent color
yourFrameHere.setBackground(new Color(0, 0, 0, 0));

And remember to set the opacity off of the contentpane (your JPanel or other component)

// turn off opacity of the content pane
yourContentPaneHere.setOpaque(false);


回答2:

If you do not have any objection in using restricted API classes then you can do this with AWTUtilities class and setWindowOpacity() method of that class. Here and here is a tutorial on how to use it? And here is the version using Java native access.