Пожалуйста, я попытался добавить событие changeHandler, но я не думаю, что понял его правильно. Я смотрю на следующие заявления ..
pickNum.addChangeListener(new ChangeHandler());
@Override
public void stateChanged(changeEvent e)
{
JSlider s = (JSlider)e.getSource();
index = s.getValue();
}
Есть ли что-то, что я мог бы сделать лучше, потому что это не работает ..
import javax.swing.*;
public class Slider extends JFrame{
public static int index;
JSlider pickNum = new JSlider(JSlider.HORIZONTAL,0,30,5);
public Slider()
{
super("Slider");
this.pack();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pickNum.setMajorTickSpacing(10);
pickNum.setMinorTickSpacing(1);
pickNum.setPaintTicks(true);
pickNum.setPaintLabels(true);
pickNum.addChangeListener(new ChangeHandler());
@Override
public void stateChanged(changeEvent e)
{
JSlider s = (JSlider)e.getSource();
index = s.getValue();
}
getPointedValue();
this.add(pickNum);
this.setVisible(true);
}
public final int getPointedValue()
{
int value;
value = pickNum.getValue();
return value;
}
public static void main(String[] args) {
Slider frame = new Slider();
System.out.println("value is :"+Slider.index);
}
}
[/CODE]