设置JFrame的背景颜色

时间:2009-07-04 04:26:39

标签: java swing

如何为JFrame设置背景颜色?

17 个答案:

答案 0 :(得分:62)

检索框架的内容窗格,并使用从setBackground()继承的Component方法更改颜色。

示例:

myJFrame.getContentPane().setBackground( desiredColor );

答案 1 :(得分:31)

设置JFrame的背景颜色:

getContentPane().setBackground(Color.YELLOW);  //Whatever color

答案 2 :(得分:10)

使用:

setBackground(Color.red);

无法正常工作。

使用

Container c = JFrame.getContentPane();

c.setBackground(Color.red);

myJFrame.getContentPane().setBackground( Color.red );

答案 3 :(得分:5)

这是最简单和正确的方法。您所要做的就是在initComponents();

之后添加此代码
getContentPane().setBackground(new java.awt.Color(204, 166, 166));

这是一种RGB颜色示例,您可以使用所需的颜色替换它。如果您不知道RGB颜色的代码,请在互联网上搜索...有很多网站提供这样的自定义颜色。

答案 4 :(得分:4)

要设置JFrame的背景颜色,请尝试以下方法:

this.getContentPane().setBackground(Color.white);

<强>来源:

QualixInfotech。 &#34;更改JFrame中的背景颜色 - Netbeans教程。&#34; YouTube,YouTube,2013年10月5日,www.youtube.com/watch?v=IRYSm0O8MyE

答案 5 :(得分:2)

你可以像这样使用容器:

Container c = JFrame.getContentPane();
c.setBackground(Color.red); 

当然,您必须为红色颜色常量导入java.awt.Color

答案 6 :(得分:2)

你好我确实有同样的问题,经过多次尝试后我发现问题是你需要一个图形对象才能绘制,绘制(setBackgroundColor)。

我的代码通常是这样的:

rawinput='domain'
tempdf = df[ df[rawinput] == 3] 

几乎所有其他答案中缺少的部分是放置代码的位置。 然后现在你知道它进入 paint(图形G)

答案 7 :(得分:2)

这是另一种方法:

private void RenkMouseClicked(java.awt.event.MouseEvent evt) {
    renk = JColorChooser.showDialog(null, "Select the background color",
            renk);
    Container a = this.getContentPane();
    a.setBackground(renk);
}

我正在使用netbeans ide。对我来说,JFrame.getContentPane()没有运行。我使用JFrame.getContentPane()的等效类this.getContentPane

答案 8 :(得分:1)

我在更改JFrame背景方面也遇到了麻烦,并且上述响应并未完全解决。我正在使用Eclipse。添加布局解决了该问题。

public class SampleProgram extends JFrame {
    public SampleProgram() {
        setSize(400,400);
        setTitle("Sample");
        getContentPane().setLayout(new FlowLayout());//specify a layout manager
        getContentPane().setBackground(Color.red);
        setVisible(true);
}

答案 9 :(得分:0)

你可以覆盖JFrame的paint方法,然后用你最喜欢的颜色填充它:

@Override
public void paint(Graphics g) {
    g.setColor(Color.red);
    g.fillRect(0, 0, this.getWidth(), this.getHeight());
}

答案 10 :(得分:0)

public nameOfTheClass()  {

final Container c = this.getContentPane();

  public void actionPerformed(ActionEvent e) {
    c.setBackground(Color.white); 
  }
}

答案 11 :(得分:0)

Resurrecting a thread from stasis.

In 2018 this solution works for Swing/JFrame in NetBeans (should work in any IDE :):

this.getContentPane().setBackground(Color.GREEN);

Source:

QualixInfotech. “Change Background Color in JFrame - Netbeans Tutorial.” YouTube, YouTube, 5 Oct. 2013, www.youtube.com/watch?v=IRYSm0O8MyE.

答案 12 :(得分:0)

您可以将此代码块用于 JFrame 背景颜色。

    JFrame frame = new JFrame("Frame BG color");
    frame.setLayout(null);
    
    frame.setSize(1000, 650);
    frame.getContentPane().setBackground(new Color(5, 65, 90));
    frame.setLocationRelativeTo(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setResizable(false);
    frame.setVisible(true);

答案 13 :(得分:-1)

创建一个JLabel,调整其大小以覆盖您的JFrame。右键单击JLabel,查找图标,然后单击(...)按钮。单击“导入到项目”按钮选择图片,然后单击“完成”。在“导航器”窗格中,(默认情况下,左下方,如果已禁用,请转到Netbeans IDE的Windows选项卡并启用它。)

使用Jlable,您也可以设置背景颜色和图像。

答案 14 :(得分:-1)

import java.awt.*;
import javax.swing.*;

public class MySimpleLayout extends JFrame {

        private Container c;
        public MySimpleLayout(String str) {
            super(str);
            c=getContentPane();
            c.setLayout(null);
            c.setBackground(Color.WHITE);
        }
}

答案 15 :(得分:-4)

    frame.getContentPane().setBackground(Color.white);

答案 16 :(得分:-5)

SIMPLEST方法可能是这样的:

super.setBackground(Color.CYAN);

在执行此操作之前,您必须在类中扩展JFrame!