因为你要更换标签,你需要
remove()的组件和
validate()的
Container。或者,只需更换图标即可。
附录:我认为后一种方法是可取的。缺少图像和剩余的代码,让我们从以下示例开始:初始化标签和滑块:
final JLabel label = new JLabel(pig);final JSlider slider = new JSlider();
然后在侦听器中,使用
setIcon():
@Overridepublic void stateChanged(ChangeEvent e) { if (slider.getValue() < 50) { label.setIcon(pig); } else { label.setIcon(dog); }}


