【发布时间】:2011-03-20 08:39:06
【问题描述】:
我创建了一个 JRadioButton 子类,我在其中重写了 paintComponent 方法,如下所示:
@Override
protected void paintComponent(Graphics g) {
g.drawImage(
isSelected() ?
getCheckedImg() :
getBasicImg()
, 0, 0, this);
}
但似乎一旦按钮被绘制,那就是它永远使用的图像。 isSelected 测试似乎没有任何效果。图形是缓存的还是Java的东西?如何为我的自定义 JRadioButton 提供已选择和未选择的图像?我必须编写自定义 UI 吗?
【问题讨论】:
-
如果你添加一个监听器并在每次切换按钮选择时调用 repaint() 会怎样?