标题:为什么label不会变色呢
只看楼主
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
 问题点数:0 回复次数:8 
为什么label不会变色呢
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class Work4 extends JFrame implements ActionListener{
private JButton btn1,btn2,btn3;
private JLabel lbl;
private Container cp;
private GridLayout layout;
public Work4(){
super("bianselong");
setSize(200,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btn1=new JButton("红色");
btn2=new JButton("黄色");
btn3=new JButton("兰色");
lbl=new JLabel("the color will be changed");
cp=getContentPane();
layout=new GridLayout(3,1,6,6);
cp.setLayout(layout);
cp.add(btn1);
cp.add(btn2);
cp.add(btn3);
cp.add(lbl);
btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);

}
public void actionPerformed(ActionEvent e){
if(e.getSource()==btn1)
{
lbl.setBackground(Color.red);
lbl.setText("红色");}
else if(e.getSource()==btn2)
{lbl.setText("黄色");
lbl.setBackground(Color.yellow);}
else {lbl.setText("兰色");
lbl.setBackground(Color.blue);}
}
public static void main(String[] args){
Work4 work =new Work4();
work.setVisible(true);
}
} 而且输出也不事按照Grid 布局输出得 如果把这个程序改成 Frame 得而步是 JFrame 得就可以变色

[此贴子已经被作者于2006-3-31 14:27:33编辑过]

搜索更多相关主题的帖子: label 变色 
2006-03-31 12:38
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
得分:0 

work 好像还有个 pack() 方法, 记不清了。。
你自己找一下。


热爱编程........永不放弃.........
2006-03-31 14:09
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
得分:0 
哪个不是紧凑布局吗

2006-03-31 14:22
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
得分:0 
哦 忘了。
还有一个 是 显示背景色。。。

热爱编程........永不放弃.........
2006-03-31 14:32
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
得分:0 
setOpaque(true);
是这个。

热爱编程........永不放弃.........
2006-03-31 14:40
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
得分:0 
能说清楚点吗 我把JFrame 得容器改成了 Frame  就可以看了

2006-03-31 14:41
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
得分:0 
不行啊 没有这个方法啊

2006-03-31 14:44
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
得分:0 

setOpaque

public void setOpaque(boolean isOpaque)
如果为 true,则该组件绘制其边界内的所有像素。否则该组件可能不绘制其某些或所有像素,从而允许其下面的像素透视出来。

对于 JComponent 而言,此属性的默认值是 false。但是对于大多数标准的 JComponent 子类(如 JButtonJTree),此属性的默认值是和外观相关的。

参数:
isOpaque - 如果此组件应该是透明的,则为 true
另请参见:
isOpaque()


lbl.setOpaque(true);

热爱编程........永不放弃.........
2006-03-31 14:44
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
得分:0 
谢谢了 成了

2006-03-31 14:49



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-54104-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.432599 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved