3

这是一些创建基本 java 窗口的代码:

JPanel pane = new JPanel();
gui(String title){
    super(title);
    setBounds(100,100,500,500);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container con = this.getContentPane();
*   con.setBackground(new Color(0,0,0));
    con.add(pane);
    setVisible(true);
}

标有星号 (*) 的线旨在使窗口的背景颜色变为黑色 (0,0,0)。然而,这条线似乎什么也没做。(我在pane.setBackground这里尝试过使用,但这没有区别。)

如何更改背景颜色?

4

3 回答 3

5

您已经添加了JPanelover ,JFrame它完全阻挡了您设置颜色的底层容器。

你可以这样做:

public Gui(String title) {
   super(title);
   JPanel pane = new JPanel();
   setBounds(100, 100, 500, 500);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   Container con = this.getContentPane();
   pane.setBackground(new Color(0, 0, 0));
   con.add(pane);
   setVisible(true);
}
于 2012-10-13T17:01:03.080 回答
1

您不能为 JFrame 的内容窗格设置背景颜色。我的意思是:

 JFrame f = new JFrame() ;
 f.setBackground(Color.RED) ;

但是,您应该做的是创建一个 JPanel,它将充当您的背景并设置其颜色,如下所示:

backgroundPanel.setBackground(Color.RED);

于 2012-10-13T17:01:15.217 回答
0
Jframe f =new Jframe();
f.setBackground(Color.red);

这也可能解决手头的问题。

于 2020-08-30T12:26:55.883 回答