【发布时间】:2014-08-03 18:52:41
【问题描述】:
当我点击它时,我正在尝试为JLabel 着色和透明化。
int leftP=4; //initialized at start of code
if (leftP>0){
if (lbl.getBackground()!=Color.YELLOW){
lbl.setBackground(Color.yellow);
lbl.setOpaque(true);
leftP--;
}else{
lbl.setOpaque(false);
lbl.repaint();
leftP++;
}
}
这里的问题是当leftP>0 if 检查标签的背景是否已经是黄色的。如果是......它会脱色,但如果不是,它会着色。
这是第一次工作。
- 我点击标签,它变成黄色和
leftP=3。 - 我重新点击标签,它变成没有黄色作为背景和
leftP=4。 - 当我第三次单击时。我希望它变成带有
leftP=3的黄色......但不幸的是,我不明白为什么它仍然没有颜色,并且每当我点击标签时它都会继续进入ELSE循环。
【问题讨论】:
-
顺便说一句。使用带有一个彩色(默认)和一个透明(选定)图标的
JToggleButton。容易得多。 -
..例如as seen here.