Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.17;
Скачать: CL | DM;

Вниз

Хотелось бы сделать ProgressBar в модальном окне для своей программы, не знаю как...   Найти похожие ветки 

 
Yuraz ©   (2001-12-28 14:00) [0]

Идёт процесс секунд 10(цикл), типа группового переименования файлов, подскажите, как к этому делу прицепить ProgressBar. Спасибо.


 
troits ©   (2001-12-28 14:28) [1]

Можно вынести процедуру обработки файлов в отдельный TThread,
и из него, с помощью Synchronize, изменять значения ProgressBar -а. Потом , по OnTerminate потока, закрывать модальное окно.


 
Voron ©   (2001-12-28 14:31) [2]

В процедуре вышеуказанного переименования, там ведь цикл какой-то, да. В этом цикле оцениваем сколько времени осталось, соответсвующим образом влияем на ProgressBar.


 
Alex_Sudakov ©   (2001-12-28 17:58) [3]

И не забываем делать Application.ProgressMessages


 
Aleksandr ©   (2001-12-28 18:57) [4]

2 Alex_Sudakov
Вы имели в виду - ProcessMessages?
А с потоком мона не заморачиваться - количество файлов данного типа получить легко, перекрывается WndProc главной формы, создается юзверское сообщение WM_UpdateProgressBar, которое после каждого прохода цикла отправляется форме, имеющей ProgressBar:

//послали мессагу установить Max для progressBara и текст комментария
SendMessage(ProgressForm,WM_SetProgressMax,FileList.Count-1,Integer(sFirstMessage));

for i:=0 to FileList.Count-1 do
...
SendMessage(ProgressForm,WM_UpdateProgressBar,i,Integer(FileList.Strings[i]));

а в WndProc формы с прогрессом:
case Message.Msg of
...
WM_UpdateProgressBar : begin
ProgressBar.Position:=Msg.wParam;
Label.Caption:=String(msg.lParam);
Repaint
end
else
Inherited WndProc(Message)
end...



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

Текущий архив: 2002.01.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
1-52586
Mikhalyov Dmitry
2001-12-27 16:21
2002.01.17
О фреймах


1-52599
greenrul
2001-12-29 14:42
2002.01.17
Почему random(4) всегда возвращает 0???


3-52498
HrUsT
2001-12-13 22:00
2002.01.17
Добавление картинки в БД


1-52567
dnd
2001-12-28 11:46
2002.01.17
Подскажите пожалуйста как можно открыть файл *.r32


4-52683
KIR
2001-11-13 09:30
2002.01.17
Выравнивание содержимого в ячейке таблицы по высоте