就是说在窗口上加一个JLabel写上字之后,使窗口透明可以看到后面的背景????

解决方案 »

  1.   

    JLabel#setBackground(new Color(0,0,0,0));
    ARGB Color的alpha值为0代表完全透明。
      

  2.   

    就是Win32编程也不是那么简单透明的事情的。还要窗口Clip。
      

  3.   

    我是想让Frame透明,而不只是让label透明。
      

  4.   

    上JDK6_13以上的版本。。
    import java.awt.BorderLayout;
    import java.awt.Container;
    import java.awt.Font;import javax.swing.JFrame;
    import javax.swing.JLabel;import com.sun.awt.AWTUtilities;public class Test extends JFrame { public Test() {
    setUndecorated(true);
    AWTUtilities.setWindowOpaque(this, false);
    Container con = this.getContentPane();
    JLabel jLabel = new JLabel("sldfjsldkfjslkdfjsk");
    jLabel.setFont(new Font("黑体", Font.BOLD, 40));
    jLabel.setOpaque(false);
    con.add(jLabel, BorderLayout.CENTER);
    pack();
    setVisible(true);
    } public static void main(String[] args) {
    new Test();
    }
    }
      

  5.   

    JDK 1.6后有这个API
    之前的JDK版本就只能使用 JNI调Win32 API来实现了