Nemprogressbar и перерисовка окна

LuMee

Well-Known Member
02.05.2006
477
0
#1
Есть у меня одна очень-очень долгая процедурка (~20 мин.), ход выполнения которой показываю с помощью NEMProgressBar. Проблема в том, что если в ходе выполнения процедуры переключиться на другое окно, а потом вернутся обратно, то Лотусовое окно не перерисовывается (просто белеет), и, соответственно, прогресса не видно до самого завершения процедуры.
Помнится в Delphi в таких сутациях рекомендовалось добавлять в тело цикла Application.ProcessMessages, т.е. вручную призывать приложение обработать поступившие сообщения (в т.ч. на перерисовку). В LotusScript вроде нашлась функция Yield аналогичного (или нет?) назначения, однако ее добавление в цикл ситуацию не исправило.
Кто знает, как заставить окошко перерисовываться постоянно?
 

LuMee

Well-Known Member
02.05.2006
477
0
#3
А в статус-лайн чени-ть печатать периодически?
Это в смысле вместо прогресс-бара? Не слишком красиво имхо.
Собственно, этот вариант обладает тем же недостатком, что и предыдущий - стоит переключиться на другое окно, и прогресса не видно.
 

Constantin A Chervonenko

Well-Known Member
Lotus team
30.05.2006
1 333
4
#5
Это в смысле вместо прогресс-бара? Не слишком красиво имхо.
Не.. В дополнение. ProgressBar - это отдельное окно. Оно при подвижках градусника перерисовывается. А status-line - в "основном" окне. Вдруг и оно при "печати" перерисуется?
 

LuMee

Well-Known Member
02.05.2006
477
0
#6
Для: Constantin A Chervonenko
Не, висит все оптом... Прихожу к мысли, что надо процедуру раз в несколько секунд усыплять на чуток, чтобы Лотус успевал перерисоваться.

Для: Kee_Keekkenen
Не подбросите примерчик, а то потерял ссылку на таковой. Плюс с явой есть еще одна там проблемка, с кодировками связанная.. Кстати, Java 1.1.8 умеет потоками пользоваться или нет, никто не помнит?