【发布时间】:2016-05-08 14:41:17
【问题描述】:
我试图在按下JButton 时覆盖它的默认背景颜色;只要按钮仍然被按下,背景颜色就必须保持不变。
我试过这个代码:
button.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent evt) {
button.setBackground(Color.BLUE); // applied after release!!
System.out.println("pressed"); // applied on pressed - OK.
}
});}
mousePressed这里没有达到我的要求!!
永远不会调用此行:button.setBackground(Color.BLUE);。但是这条线被调用:System.out.println("pressed");。
然而,这一行button.setBackground(Color.BLUE); 是在释放按钮后调用的 - 不是在按下时!!!
如何达到我的要求?
【问题讨论】:
-
尝试将 contentFilled 属性设置为 false 并将 opaque 设置为 true
-
也许这有助于link
标签: java swing colors background jbutton