主题:[讨论]求教JToggleButton相关的问题
billgacsli
[专家分:1300] 发布于 2007-09-10 20:33:00
[size=3]现在希望将JToggleButton按下时显示为红色,弹起时显示蓝色,不知道怎么实现,期待高人指点。[/size]
我试了用setBackground(Color)没什么反应,setForeground(Color)却只能设定JToggleButton上的文字的颜色。
最后更新于:2007-09-13 14:53:00
回复列表 (共4个回复)
沙发
daifei4321 [专家分:2590] 发布于 2007-09-10 23:52:00
设置setOpaque(false);
然后给按钮添加mouseListener,在mousePressed和mouseReleased里分别设置相应的setBackground()
板凳
happyboy2007 [专家分:3900] 发布于 2007-09-11 07:40:00
通过方法
setIcon(Icon icon)设置按钮常态下的图标
和
setSelectedIcon(Icon icon) 设置按下时图标
来实现。
所以,我觉得你应该制作两个不同颜色的图像文件
3 楼
billgacsli [专家分:1300] 发布于 2007-09-13 15:10:00
多谢楼上两位帮忙。
我知道用setIcon可以实现,但不想用这种办法,应该还有更简单的吧。
感觉为这个弄两个Icon不值当啊
setOpaque,我不知道行不行
4 楼
忍狂侠小强 [专家分:10] 发布于 2007-10-27 20:07:00
玩过CS吧,它上面的按钮一放上去就变,可用mouseListener处理,分别对mouse放上一个状态,mouse点击一个状态,mouse移开又一个状态!
我来回复