Как правильно обновить пользовательский интерфейс после выполнения некоторых операций на Swing?
Например, после нажатия кнопки вызывается метод, который может быть почти мгновенным или занимать несколько секунд.На самом деле вся логика приложения выполняется удаленно через веб-сервис, поэтому нормально немного подождать, пока приложение ответит.
Мой обработчик событий для кнопки может выглядеть следующим образом:
myButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
//callWebService();
//do stuff
//updateUI(); // <----- repaint? revalidate? what?
}
});
Моя текущая реализация вызывает метод updateUI, который внутренне вызывает validate () и repaint () для родительского компонента, который содержит пользовательский интерфейс.Это работает, но иногда я вижу мерцание экрана.Я делаю это неправильно?Есть ли лучший способ сделать это?