JFrame.setBackground设置无效

来源:互联网 发布:凸优化 求解 编辑:程序博客网 时间:2024/05/16 07:42
JFrame这样的框架,一旦创建,在其中就已经包含一个内容面板,一般我们在往JFrame中添加组件时,都加在了内容面板中,这个面板可以通过JFrame的成员方法getContentPane()取出来,所以如果设置JFrame的背景颜色,仍然会被内容面板盖住,不如设置内容面板的背景颜色,如果框架中还加有其他面板,内容面板的颜色也会被其他面板盖住,要注意一下面板的布局情况。

在使用JFrame.setBackground(new Color);是发现这个方法调用后并没有改变JFrame窗口的背景颜色,这体现了点JFrame和Frame的区别:JFrame要用:JFrame.getContentPane().setBackground(new Color);来改变JFrame的背景颜色;Frame中则可以直接使用:Frame.setBackground(new Color);

 

JFrame透明度设置

  java.awt.EventQueue.invokeLater(new Runnable() {   public void run() {    AAA a = new AAA();    a.setVisible(true);//    com.sun.awt.AWTUtilities.setWindowShape(a, new Ellipse2D.Double(0, 0, a.getWidth(), a.getHeight()));    com.sun.awt.AWTUtilities.setWindowOpacity(a, 0.80f);   }  });

 

a为JFrame 0.80F为透明度系数

原创粉丝点击