作者:憐海周_472_151 | 来源:互联网 | 2023-05-17 17:09
小妹刚接触java不久,现在正在做一个用Swing显示图表的工具,其中有一个环节是要通过滑块(JSlider)的改动,通过监听器ChangeListener来对数据改变,从而得到不同的图像显示效果;现
小妹刚接触java不久,现在正在做一个用Swing显示图表的工具,其中有一个环节是要通过滑块(JSlider)的改动,通过监听器ChangeListener来对数据改变,从而得到不同的图像显示效果;现在的问题是我有好多个“滑块”,分别对应不同的显示图表,但是我看到JSlider类并没有提供可以给JSlider实例起名称的构造器或set方法,所以我只有要动一个滑块,都要进入到stateChanged(ChangeEvent arg0)方法里面,我想应该有办法在stateChanged里区分不同的JSlider吧???
谢谢各位
2 个解决方案
Object obj=e.getSource();
if(obj instanceof JSlider){
((JSlider)obj).setValue(45);调用相关方法就行,
或者
JSlider js=(JSlider)obj;
if(js.equals(myObj)){如果是myObj这个滑块的话
doSomething();
}else if(js.equals(myObj1)){如果是myObj1这个滑块的话
...
}