JTable вставка данных в схему автоматического обновления - PullRequest
1 голос
/ 05 мая 2011

У меня есть JTable, в котором я реализовал функцию автообновления для отображения оставшегося времени каждые 1 минуту или (60000 л).

Но у меня возникает эта проблема, когда вставляемая строка еще не завершена (кодирование данных выполняется на самой JTable), данные теряются. Для предотвращения потери данных и без удаления функции автообновления.

Возможно ли приостановить поток (SwingWorker (Void, Void) был использован для функции автообновления), чтобы дать возможность вставки / обновления данных не теряться?

1 Ответ

0 голосов
/ 05 мая 2011

Убедитесь, что автообновление и обновление происходят в одном потоке. Это предотвратит автоматическое обновление до завершения текущего обновления.

Поток диспетчеризации событий (EDT) является хорошим кандидатом, тем более что Swing уже содержит среду для операций с очередями в EDT.

public void autorefresh() {
    SwingUtilities.invokeLater(
       new Runnable() { 
          ...
          // code to request refresh goes here. 
       }
    );
}
...