У меня есть простой прослушиватель изменений на слайдере. Кто-нибудь может объяснить, почему он срабатывает 3 раза, когда я нажимаю на новую позицию. Прежде чем я напишу код, чтобы где-то сохранить предыдущее значение, чтобы увидеть, действительно ли оно изменилось, я хотел бы узнать, есть ли другой способ выяснить это. Первый тигр показывает его таким, каким он был, следующий показывает новое значение, последний повторяет новое значение.
slider_1 = new JSlider();
slider_1.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent arg0) {
if (fullyInitialized == 1) {
if (comboBox_1.getSelectedIndex() < 1) {
SendData2Device(1);
}
}
}
});
slider_1.setOrientation(SwingConstants.VERTICAL);
ChangeListener
вы должны проверитьif (!slider.getValueIsAdjusting())
, так как этот метод вызывается при изменении значения, и, таким образом, если значение изменяется 10 раз, оно будет вызываться 10 раз. - person David Kroukamp   schedule 02.01.2013