Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];

Вниз

Хотелось бы сделать 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
3-52483
Yanker
2001-12-04 00:01
2002.01.17
Альтернатива BDE


14-52649
vic_vm
2001-11-21 13:48
2002.01.17
Плакат


3-52501
ripp
2001-12-15 15:40
2002.01.17
Повтор. Помогите!


1-52574
Марина
2001-12-28 10:28
2002.01.17
SysTray или RxTrayIcon


1-52547
Labert
2001-12-26 11:20
2002.01.17
Что показывает DBGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский