У меня есть кнопка переключения и я установил свое состояние следующим образомJava кнопка переключения событие не срабатывает, когда выбор делается, но срабатывает, когда мышь завис
public void setSizeFeet(boolean enabled) {
this.size_tb.setSelected(enabled);
}
У меня есть слушатель
size_tb.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
size_tbStateChanged(evt);
}
});
private void size_tbStateChanged(javax.swing.event.ChangeEvent evt) {
if (size_tb.isSelected()){
size_tb.setText("Feet");
} else {
size_tb.setText("Meters");
}
}
Проблема в том, когда я устанавливаю состояние, вызывающее первый метод. Ничего не произошло. Однако, просто наведя курсор мыши на кнопку, он обновляется, чтобы показать правильный текст. Я поставил точку прерывания, и я заметил, что событие просто срабатывает, когда я наводил указатель мыши на кнопку. Если не это, когда выбор установлен, или когда мышь не парить)
Благодарности
Как это возможно? звучит странно. кнопка переключения должна быть у слушателя мыши для этого. – ziLk
'ChangeListener 'уведомляется при изменении внутренней модели. Когда вы наводите кнопку, свойство его опрокидывания изменяется, поэтому вы получаете событие. –