Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Немного об Progress Bar (https://forum.antichat.xyz/showthread.php?t=78541)

_GlaD1aT(OR)_ 26.07.2008 14:48

Немного об Progress Bar
 
Немного об Progress Bar


Многие новички Delphi задаются вопросом как сделать что-бы прогресс бар 'тикал'. Вот сейчас мы рассмотрим компонент ProgressBar со страницы библиотеки Win32, предназначенную для отображения в стиле Windows 95/98 хода процессов, занимающих заметное время, например, копирования больших файлов, настройку приложения, установку приложения на компьютере и т.п. Пример хода процесса компонентами ProgressBar :
http://s44.radikal.ru/i105/0807/68/4d29b2ea0f23.jpg
Основные свойства ProgressBar'a :

Max - Максимальное значение позиции (Position, Progress), по умолчанию — 100%

Min - Начальное значение позиции (Position, Progress)

Orientation - Ориентация шкалы компонента: pbHorizontal — горизонтальная, pbVertical — вертикальная

Smooth - Непрерывное (при значении true) или дискретное отображение процесса. На рисунке задано Smooth = true

Step - Шаг приращения позиции, используемый в методе StepIt. Значение по умолчанию — 10.

---------------------------------------------

Вот пример работы ProgressBar'a с таймером и без таймера + исходник


// если таймер то интервал допустим 1000 - обновление каждую секунду
// для прогрессбара max = 60 - минута
begin
Timer.Enabled := ProgressBar.Position < ProgressBar.Max;
ProgressBar.Position := ProgressBar.Position + 1;
end;
--------------------------------
// чтобы без таймера
var
k: DWORD;
begin
ProgressBar.Max := 60;
ProgressBar.Min := 0;
ProgressBar.Position := ProgressBar.Min;
k := GetTickCount;
while k + (60 * 1000 {минута}) < GetTickCount do
begin
ProgressBar.Position := (GetTickCount - k) / 1000;
// тут обычно
Application.ProcessMessages;
end;
end;



Исходник . Спасибо за внимание

Pir4tt 27.07.2008 21:12

мм, кодес ниочём)) если решил показывать примеры работы с компонентами, то описывай все, хотя бы из стандартных панелек :)) А так.. где-то тут был топик "Проги от скуки", наверно это туда надо было ;)

_GlaD1aT(OR)_ 28.07.2008 03:20

Топик не ни о чем, а о прогресс баре. А так замечание учту

De-visible 28.07.2008 13:09

Топик не о чем, так как здесь ничего нового нет.
все из книги.

_GlaD1aT(OR)_ 28.07.2008 13:46

Из какой н*х книги?! Я сам это писал...темболее я не тебе писал, а у того в этом проблемы

dos999 28.07.2008 18:44

_GlaD1aT(OR)_ может писал ты и сам, но пойми "статья" уж очень мелочная... статьи надо писать о том о чём мало материала... а уж о прогрес баре то зачем? даже если материала по нему нет то там интуитивно можно самому до всего дойти.. всё ж понятно и так как день божий =)... короче ни*уя не зачёт

_GlaD1aT(OR)_ 29.07.2008 02:29

А это не статья, это просто краткое описание этого элемента...


Время: 12:45