设置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!