GUI怎么设置背景颜色?

代码如下:importjava.awt.*;importjavax.swing.*;publicclassBackgroundTest{publicstaticvoidm... 代码如下:
import java.awt.*;
import javax.swing.*;

public class BackgroundTest {

public static void main(String[] args) {
new KFrame();
}

}

class KFrame extends JFrame {

KFrame() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 关闭窗口后操作为退出程序
setSize(500, 500);// 程序窗口尺寸
setVisible(true);// 窗口显示
JPanel component = new KComponent();
add(component);
component.setBackground(Color.YELLOW);
}

}

class KComponent extends JPanel {
public void paintComponent(Graphics g) {
g.drawString("King's", 150, 150);

}

}
如上,为什么我的那句component.setBackground(Color.YELLOW);想设置背景颜色为黄色,可是为什么没用?写了当没写,问题出在哪?
展开
 我来答
百度网友7893292
2012-01-14 · TA获得超过844个赞
知道小有建树答主
回答量:1088
采纳率:83%
帮助的人:688万
展开全部
像 JButton,JTextField之类的,可以直接使用 setBackground()

如果想修改JPanel、JFrame这样的背景色,就需要重载paintComponent方法:

public void paintComponent(Graphics g)

可以在这里会制一个矩形的背景色,也可以绘制背景图片。
微测检测
2023-10-30 广告
深圳市微测检测有限公司始创于2005年,是一家综合性、全方位、一站式的权威第三方检测认证公司。自成立以来,Microtest微测检测已成功为上万家企业完成数十万计的产品测试和认证,协助企业的产品畅销全球。Microtest微测检测已建立二十... 点击进入详情页
本回答由微测检测提供
xgust
2012-01-14 · TA获得超过560个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:957万
展开全部
改成this.getContentPane().setBackground(Color.YELLOW); 就没问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0bf7e3f
2012-01-14
知道答主
回答量:42
采纳率:0%
帮助的人:16.3万
展开全部
学习了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式