![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TForm.FormActivate - долгая загрузка [D7]
chirchik © (2004-07-26 15:15:00)на собыите формы OnActivate вызывается код программы, в котором происходит долгое (длительное) выдергивание всяких данных из таблиц БД.
При запуске проекта загружается рамка формы, и ничего на ней не прорисовывается все то время, которое выполняется программа по подготовке данных для вывода. Можно ли как-нибудь сделать что-то вроде заставки Loading.
Поможет ли try finnaly структура?
Vlad (2004-07-26 15:37:00) [21]
> chirchik © (26.07.04 15:33) [4]
Подозреваю, что на OnActivate - точно зря.
Лучше или на OnCreate или на OnShow.
Правда это не столь поможет твоей проблеме.
Один из способов решения - вынести этот код вобще в отдельный поток. Другое решение - сделать что-то вроде Wait-окна, которое перед тем форма будет загружена, вылезет с надписью "Пожалуйста, ждите" и уничтожится после того как форма будет открыта.
chirchik (2004-07-26 15:36:00) [22]На Create вешал. Выходит ошибка.
В этом коде у меня к базе обращение идет. Видимо из-за него и ошибка.
Соловьев (2004-07-26 15:35:00) [23]
> А без SplashWindow можно сделать?
> может быть я зря этот код на FormActivate повесил?.
зря. повесь на криэйт
chirchik (2004-07-26 15:33:00) [24]А без SplashWindow можно сделать?
может быть я зря этот код на FormActivate повесил?.
Но мне надо чтобы при загрузке формы этот код тоже выполнялся. Но про такой результат я даже не подозревал.
Соловьев (2004-07-26 15:28:00) [25]
> А при чём здесь try ... finally? Или я что-то не понимаю???
чтобы сплеш окно всегда уничтожилось, если будет сбой при открытии таблицы.
Ega23 (2004-07-26 15:25:00) [26]Поможет ли try finnaly структура?
А при чём здесь try ... finally? Или я что-то не понимаю???
Соловьев (2004-07-26 15:16:00) [27]
> Поможет ли try finnaly структура?
она родимая. возьми из набора RxLib - SplashWindow. Или сделай свою с прогресс баром