设置JFrame的背景颜色

如何设置JFrame的背景颜色?

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

例:

myJFrame.getContentPane().setBackground( desiredColor ); 

为JFrame设置背景颜色:

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

使用:

 setBackground(Color.red); 

不能正常工作。

使用

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

要么

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

你好在那里我有同样的问题,经过多次尝试,我发现问题是,你需要一个graphics对象能够绘制,绘制(setBackgroundColor)。

我的代码通常是这样的:

 import javax.swing.*; import java.awt.*; public class DrawGraphics extends JFrame{ public DrawGraphics(String title) throws HeadlessException { super(title); InitialElements(); } private void InitialElements(){ setSize(300, 250); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); // This one does not work // getContentPane().setBackground(new Color(70, 80, 70)); } public void paint(Graphics draw){ //Here you can perform any drawing like an oval... draw.fillOval(40, 40, 60, 50); getContentPane().setBackground(new Color(70,80,70)); } } 

几乎所有其他答案的缺失部分是放置代码的位置。 那么现在你知道它在涂料(graphicsG)

你可以像这样使用一个容器:

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

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

这是另一种方法:

 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()的类相当于JFrame.getContentPane()

你可以重写JFrame的paint方法,然后用你最喜欢的颜色来填充:

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

这是最简单和最正确的方法。 你所要做的就是在initComponents()之后添加这段代码。

 getContentPane().setBackground(new java.awt.Color(204, 166, 166)); 

这是一个RGB颜色的例子,你可以用你想要的颜色replace它。 如果你不知道RGB颜色的代码,请在互联网上search…有很多网站提供这样的自定义颜色。

 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); } } 

创build一个JLabel,调整它,以便它覆盖您的JFrame。 右键单击JLabel,find图标,然后单击(…)button。 点击导入到项目buttonselect一个图片,然后点击完成。 在Navigator窗格中,(默认情况下,如果禁用,请转到Netbeans IDE的Windows选项卡并启用它。)

使用Jlable你可以设置背景颜色以及图像也。

尝试这个:

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

可能SIMPLEST方法是这样的:

 setBackground(Color.CYAN); 

在这之前,您必须在课堂上扩展JFrame!