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

Что надо сделать для   Найти похожие ветки 

← →
Aleksandr ©   (2003-06-11 15:29) [0]

Иногда какое-то количество длительных операций в дочернем окне (например, открытие наборов данных), нужно делать уже после FormCreate. И тогда получается некрасивый эффект - окно частично отрисовывается, потом подвисает в таком состоянии, и затем уже разворачивается или полностью дорисовывается. Как сделать так, чтобы дочернее окно не рисовалось до определенного момента? Невидимым его сделать нельзя - Делфи не позволяет...


← →
ZEE ©   (2003-06-11 15:38) [1]

Вариант 1.
Все-таки полностью прорисовать окно:

//в FormCreate
Application.ProcessMessages;
//обработка данных


Вариант 2.
Все элементы по умолчанию - невидимы (visible=false), а после обработки (точнее даже в OnActivate формы) - visible:=true нужным компонентам...


← →
clickmaker ©   (2003-06-11 15:57) [2]

Есть еще вариант 3 - длительные операции делать в отдельном потоке, который стартует из FromCreate


← →
Aleksandr ©   (2003-06-11 15:59) [3]

Мда... спасибо, жаль, что альтернатив мало :(



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

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



Память: 0.45 MB
Время: 0.019 c
14-84631
Дмитрий К.К.
2003-06-09 06:00
2003.06.26
Именинники 9 июня


3-83917
krotik
2003-06-03 12:29
2003.06.26
RDSConnection в ADO - вопрос не для слабаков


3-84039
OxOTHuK
2003-05-31 16:39
2003.06.26
Печать из DbGrid


1-84428
[BAD]Angel
2003-06-09 23:45
2003.06.26
Помогиде с очисткой Image


3-83988
Инна
2003-05-30 10:59
2003.06.26
перекючение страниц в PageControl




   Наверх