Я разработал Java-приложение для создания и распаковки архива, например WinRAR . Вы можете создать несколько архивов одновременно с многопоточностью. А недавно я хотел добавлять информацию о статусе при создании архива в виде JProgressBar в новый JFrame при каждом создании.
Но моя проблема - генерировать информацию в новом статусном фрейме и в потоке, который создает архив. Вот почему я создаю JFrame в ветке архива для обновления индикатора выполнения в настоящее время.
Но, как я мог бы прочитать в разнообразном источнике информации и в ваших ответах / комментариях, это противоречит Java Swing и производительности; Я не могу создать объект свинга в другом месте, где EDT .
Но тогда как мне решить мою проблему? Как я могу установить связь между записью моего архива и его статусом JFrame (с JProgressBar)?
EDIT:
Я реализовал SwingWorker для управления GUI в моем приложении. Теперь все готово, у меня есть другой вопрос:
С SwingWorker, как мне действовать в фоновом режиме с событием на кнопке состояния кадра? (Пример: приостановить сжатие или остановить его.)