Мой графический интерфейс отображает данные, поступающие с сервера каждые 500 мс.У меня есть состояние гонки, когда дело доходит до редактирования полей.К тому времени, когда вызывается прослушиватель Action, значение из внутреннего интерфейса перезаписывает все, что пользователь вводил вручную в текстовое поле.
Есть ли способ заблокировать поле или использовать семафор или получить новое значение из другого места?
Спасибо.
JTextField tf = new JTextField();
tf.setName("reg_r"+i);
tf.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
JTextField tf = (JTextField)e.getSource();
//prints OLD value!
System.err.println(tf.getText());
}
});