|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Процесс подключения к постгресу
Попытку подключения к постгресу осуществляю, в основной форме программы, следующим образом, как показано ниже.
Код:
FMBZ_MyThread := TFMBZ_ProgressBarThread.Create(False); FMBZ_MyThread.Priority:= tpNormal; sleep(50); try iFMBZ_ZConnection.Connect; except ShowMessage('Please clarify: is the server running on host ' + iFMBZ_ZConnection.HostName + '?'); end; Но в процессе подключения программа "немножко" зависает и для того что бы показать что идет подключение и нужно подождать, ввел прогресбар который запускаю в потоке создаваемом до подключения к постгресу. Код:
FMBZ_MyThread := TFMBZ_ProgressBarThread.Create(False); FMBZ_MyThread.Priority:= tpNormal; Код:
procedure TFMBZ_ProgressBarThread.Execute; while not(FMBZ_MyThread.Terminated) do begin sleep(50); PostMessage(FMBZ_MainAdminForm.Handle,PROGRESS_POS,0,1); end; end; procedure TFMBZ_MainAdminForm.SetProgressPos(var Msg: TMessage); begin FMBZ_ProgressBar.Position:=FMBZ_ProgressBar.Position + Msg.LParam; if (FMBZ_ProgressBar.Position >= FMBZ_ProgressBar.Max) then FMBZ_ProgressBar.Position := 0; FMBZ_ProgressBar.Refresh; end; Может ли кто нибудь подсказать как 1) Либо заставить прогресбар изменяться в процессе подключения к постгресу 2) Либо заставить не зависать программу Спасибо |