Вниз
Скачать: CL | DM;

Длительная процедура по событию OnActivate   Найти похожие ветки 

← →
KIR ©   (2002-10-11 12:28) [0]

Народ, такой вопрос: по событию формы OnActivate выполняется процедура, которая на разных ПК длится от 0,000001 до 5-6 секунд. Все бы ничего, толко выглядит это так: рисется рамка формы, рамки некоторых элементов, затем у пользователя создается впечатление, что приложение зависло... пауза ...форма заполняется до конца. Форма MDIChild так-то Hide-Show не помогает. Как можно с этим бороться?


← →
Smithson ©   (2002-10-11 12:50) [1]

делай заголовочную форму, создавай ее из этого самого Activate, рисуй ее, а после длительного процесса убивай.


← →
KIR ©   (2002-10-14 08:03) [2]

А что имеется ввиду под словом "заголовочная форма"?


← →
AngeL B.   (2002-10-14 09:02) [3]

А эта процедура обязательно должна выполняться в событии OnActivate? Например, в конструкторе или в процедуре, которая вызывает эту форму действия никак не могут быть выполнены? А в параллельном потоке?


← →
Casee   (2002-10-14 11:12) [4]

А splash-форма не подойдет?


← →
Zemal ©   (2002-10-14 11:33) [5]

А ты объясни: можно ли показывать контролы, которые находятся на форме до всех этих раскладок, которые ты выполняешь при активизации формы? Если можно - то вынеси все эти действия в поток, и пусть поток их делает, а форма потом отображает данные, которые вернёт поток :). Пример потока смотри в хелпаке (TThread). А если проблемы с пониманием потока есть, то я бы посоветовал одну библиотеку, где очень хорошо объяснено, что такое поток, проблемы взаимодействия потока с формой и между собой... и много другой полезной инфы :). Если интересно, то пиши - вышлю на мыло.


← →
KIR ©   (2002-10-16 00:04) [6]

>Zemal Конечно интересно. Шли kirill_koliadin@pisem.net



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
3-92343
dma
2002-10-06 19:11
2002.10.28
Rave отчеты


1-92577
lovres
2002-09-27 15:32
2002.10.28
Как сделать, чтобы после закрытия приложения не закрывался Word?


3-92335
студент2002
2002-10-06 11:10
2002.10.28
ADOQuery


3-92409
Maik
2002-10-07 18:25
2002.10.28
Последовательное выполнение Select


1-92440
Keplin Sergey
2002-10-17 22:40
2002.10.28
как из dll обрабатывать командную строку?




   Наверх