我需要我的一个JLabel,lblLength,以0.1间隔显示0到2之间。我尝试了滑块的值" length_slider"并且在将其设置在lblLength之前进行调整,但这并不起作用。如果有人能告诉我什么是错的,我会非常感激。
public class label_display implements ChangeListener {
JLabel v;
String name;
label_display( JLabel v){// grab the JLabel
this.v=v;
}
@Override
public void stateChanged(ChangeEvent e) {
JSlider slider = (JSlider)e.getSource();
if(!slider.getValueIsAdjusting()){
name = slider.getName();
if(name=="length_slider"){
double adjuster = slider.getValue();
adjuster=adjuster/10;
String temp = Double.toString(adjuster);
v.setText(temp);
}
else{
String temp = Double.toString(slider.getValue());
v.setText(temp);
}
}
}
答案 0 :(得分:0)
使用.equals()来比较@chancea建议的非==的对象。 .equals()比较两个字符串是否相同(" asdf" .equals(" asdf")是真的但是" asdf" ==" asdf"是假的。)
新代码应如下所示:
if(name.equals("length_slider")){
而不是
if(name == "length_slider"){