Search code examples
javaswingjframetransparent

How to make JFrame transparent?


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.


Solution

  • 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.

    code example

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                javax.swing.JFrame fr = new NewJFrame();
                com.sun.awt.AWTUtilities.setWindowOpacity(fr, 0.7 f);
                fr.setVisible(true);
            }
        });
    }