首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

各位大神关于做JFrame不规则半透明窗口

2013-10-18 
求救各位大神关于做JFrame不规则半透明窗口今天在这个网站上http://www.iteye.com/topic/707514看到了制作

求救各位大神关于做JFrame不规则半透明窗口
今天在这个网站上http://www.iteye.com/topic/707514
看到了制作不规则JFrame窗口的方法,

利用AWTUtilities.setWindowOpaque(Jframe true);方法将JFrame设置为透明,
然后再JPanel上画图,相当于直接在桌面上画图,
可是无轮我怎么试验都透明不了,
即使复制教程里一模一样的代码进去也一样,怎么回事啊,是我的系统环境问题还是编译器问题?


这是一个最简单的例子,可是还是运行不了,求教各位大神啊,我快疯了,这个问题折腾一天了各位大神关于做JFrame不规则半透明窗口

import java.awt.*;
import javax.swing.*;
import com.sun.awt.AWTUtilities;

public class MyJFrame extends JFrame {

    public MyJFrame() {
         
        setVisible(true);
        AWTUtilities.setWindowOpaque(this, false);
        setSize(640,480);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        MyJFrame j = new MyJFrame();
    }
}

[解决办法]

import java.awt.*;
import javax.swing.*;
import com.sun.awt.AWTUtilities;

public class MyJFrame extends JFrame {

    public MyJFrame() {
        super("透明窗体");
        this.setLayout(new FlowLayout());
        this.add(new JButton("按钮"));
        this.add(new JCheckBox("复选按钮"));
        this.add(new JRadioButton("单选按钮"));
        this.add(new JProgressBar(20, 100));
        this.setSize(new Dimension(400, 300));
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // this.setUndecorated(true);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                Window w = new MyJFrame();

                com.sun.awt.AWTUtilities.setWindowOpacity(w, 0.63f);
                w.setVisible(true);
            }
        });
    }
}

热点排行
Bad Request.