![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() Как отобразить процесс соединения ADOConnection, а то пользователи нервничать начинают,
пока программа соединяется с сервером и загружает таблицы из удалённой БД. |
#2
|
||||
|
||||
![]() TProgressBar, TAnimate
Пишу программы за еду. __________________ |
#3
|
||||
|
||||
![]() Цитата:
Какие компоненты использовать, я знаю. Мне идея нужна. Пока в голову пришла только одна: Код:
ADOConn.Connected := true; Progressbar.position := 20; Application.ProcessMessages; ADOTable1.Open; Progressbar.position := 20; Application.ProcessMessages; ... 4ре таблицы + само соединение. А если ещё будут таблицы... Покрасивее ничего нет? |
#4
|
||||
|
||||
![]() Цитата:
Google в помощь |
#5
|
||||
|
||||
![]() Если во время запуска программы выполняются какие-то потенциально перечисляемые действия, вроде ADOTable1.Open из приведенного примера, их имена можно их выводить в заставке, как это делает Delphi или Photoshop.
Поскольку в соседней теме автор просил помощи в борьбе с быдлокодом, сразу скажу, что так как на примере писать не нужно. Должна быть некая общая процедура, выводящая "Загружается %s" в окне заставки. Вызов этой процедуры должен стоять в событии BeforeOpen, в AfterOpen можно поставить очистку строки. Причем, если у означенных компонентов нет своих обработчиков данных событий, обработчик должен быть один на все таблицы сразу. Если же у некоторых свой обработчик есть, добавляем в него вызов процедуры статуса (именно для этого нам и понадобилась процедура). Для остальных компонентов обработчик будет по-прежнему один общий. В качестве имен можно выводить имя компонента или значащую часть имени, убрав префиксы/постфиксы "ADO", если есть. Заодно будет повод назвать компоненты по-нормальному, а не ADOTable1, ADOTable2. Если же хочется совсем по-человечески, придется завести таблицу подстановки, в которой имя компонента соответствует читабельному наименованию. Красота требует жертв. Под таблицей подстановки подразумевается не столько таблица БД, сколько типизированная константа массивового типа в самой программе. Я бы сделал именно так. |
#6
|
||||
|
||||
![]() Цитата:
Цитата:
Цитата:
И ещё, пожалуйста, подскажите небыдлокодерский вариант создания Экрана загрузки приложения. Думал сделать (дополнительную) форму, на OnShow которой, загрузить все таблицы. Но где вызвать её рождение ума не приложу. Последний раз редактировалось Uniq!, 01.09.2013 в 22:24. |