Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / ProgressMonitor не успевает отрисоваться. / 8 сообщений из 8, страница 1 из 1
17.05.2007, 18:07:50
    #34533614
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
Приложение выполняет некую длительную операцию. Для показа состояния и возможности прервать используется ProgressMonitor. Но проблема в том, что он не успевает целиком отрисоваться и так и остаётся "кривым". Толку от такого монитора нисколько.

Как сделать, чтобы монитор нормально показывался?

Код: plaintext
Meo voto
...
Рейтинг: 0 / 0
17.05.2007, 18:13:24
    #34533631
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
Swing Worker используется?
...
Рейтинг: 0 / 0
17.05.2007, 18:41:27
    #34533724
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
DeadySwing Worker используется?
А что это такое?
...
Рейтинг: 0 / 0
17.05.2007, 18:55:06
    #34533757
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
...
Рейтинг: 0 / 0
17.05.2007, 19:27:19
    #34533830
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
Я не совсем понимаю, почему монитор не дорисовывается. Ведь вызов в том же потоке происходит.

Код: plaintext
Meo voto
...
Рейтинг: 0 / 0
18.05.2007, 11:01:50
    #34534844
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
SarinЯ не совсем понимаю, почему монитор не дорисовывается. Ведь вызов в том же потоке происходит.

Код: plaintext
Meo voto


прорисовка компонент происходит в совсем другом потоке: EventDispatсhThread.

чтобы обновлять компоненты и при этом делать какую-то длительную работу, необходимо использовать SwingUtilities.invokeLater().

Класс SwingWorker все это делает за вас. Вроде он даже включен в состав JDK6 (по крайней мере, обещали встроить), найти в гугле его можно за 5 секунд. на java.sun.com есть статья про его использование.
...
Рейтинг: 0 / 0
18.05.2007, 11:11:07
    #34534884
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
Спасибо. Вобщем гемороя мне теперь точно хватит:(

Код: plaintext
Meo voto
...
Рейтинг: 0 / 0
18.05.2007, 11:25:29
    #34534937
Poolerw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressMonitor не успевает отрисоваться.
Используйте Swing Application Framework (JSR 296). Избавляет от большого количества геморроя (автосохранение всех размеров окон, столбцов таблиц, автоинжекция ресурсов, actionы с поддержкой background тасков и т.д.)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / ProgressMonitor не успевает отрисоваться. / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]