窗口背景颜色是指直接调用jframe或者frame的setbackground(color color)方法设置后显示出来的颜色。
如果直接调用这个方法后,的确设置了背景颜色,但看到的却不是直接的jframe或者frame,而是jframe.getcontentpane(),而jframe上的contentpane默认是color.white的。所以,无论你对jframe或者frame怎么设置背景颜色,你看到的都只是contentpane。
推荐相关视频教程:java视频教程
解决方法:
方法一:在完成初始化,调用getcontentpane()方法得到一个contentpane容器,然后将其设置为不可见,即setvisible(false)。
代码如下:
import javax.swing.*;import java.awt.*public class testmenubar1 { public static void main(string arg[]) { createnewmenu ck=new createnewmenu("第一个窗口"); }}class createnewmenu extends jframe{ public createnewmenu(string title) { getcontentpane().setvisible(false); setbackground(color.blue); //设置窗口背景颜色 settitle(title); setbounds(200,200,500,500); //设置窗口位置和大小 setvisible(true); //设置窗口可见 }}
方法二:直接加 this.getcontentpane().setbackground(color.blue);
代码如下:
import java.awt.*;import javax.swing.*;public class testmenubar1 { public static void main(string arg[]) { createnewmenu ck=new createnewmenu("第一个窗口"); }}class createnewmenu extends jframe{ public createnewmenu(string title) { settitle(title); setbounds(200,200,500,500); setvisible(true); this.getcontentpane().setbackground(color.blue); }}
相关文章教程推荐:java入门教程
以上就是java窗口背景颜色设置的详细内容。