Создаем Анимированный ProgressBar

Опубиковано: 28.09.2008 г., автор: , просмотров: 38747

Delphi уроки: Создаем Анимированный ProgressBar.

Всем привет в этом уроке мы научимся создавать свой анимированный ProgressBar, подойдет он для тех случаев когда точное число шагов неизвестно, ну в общем скоро вы все поймете ) Итак поехали:

Открываем Delphi и как всегда создаем новый проект, кидаем на форму компонент Timer с закладки System и компонент Image с закладки Additional, больше компонентов у нас не будет! Двигаемся дальше, сейчас нам нужно будет создать одну небольшую процедурку поэтому переходим в код находим там ключевое слово public и после него пишем

procedure GoImgProgress (Const IMG: TImage);

Нажимаем комбинацию клавиш Ctrl+Shift+C Delphi генерирует нам шаблон будущей процедуры. Теперь посмотрите то что должно получиться в конце и допишите к своему шаблону недостающие строчки.

procedure TForm1.GoImgProgress(const IMG: TImage);
const
step=2;
var
f:Tbitmap;
begin
with image1.Picture.Bitmap do // Image1 - это имя компонента image
begin
f:= Tbitmap.create;
try
f.width:=width;
f.height:=height;
BitBlt(f.Canvas.Handle, step, 0, Width-step, Height, Canvas.Handle, 0, 0, SRCCOPY) ;
BitBlt(f.Canvas.Handle, 0, 0, step, Height, Canvas.Handle, Width-step, 0, SRCCOPY) ; ;
Assign(f) ;
finally
FreeAndNil(f) ;
end;
end;
end;

Ну что я надеюсь что вы справились, потому что сейчас нам нужно будет загрузить в компонент image1 какую ни будь картинку в формате bmp. Кликаем два раза на компонент image, далее жмем load и выбираем нужную картинку. Лично я пользовался вот этой:

анимированный progressBar
скачать эту картинку в формате bmp

Далее переходим к компоненту timer, свойство interval ставим 100, свойство Enabled ставим true. Создаем обработчик событий (OnTimer) на нашем таймере - два раза кликаем по нему и между словами begin end пишем:

GoImgProgress(image1);

Вот и всё, теперь вы умеете создавать анимированный Progressbar ! Запускаем проект и наслаждаемся !)

P.S. На счет вопроса о том как я продвигаю этот сайт, уфф... много сил и времени было потрачено, а на счет того сколько способов перепробовал, я вообще молчу. Сейчас использую один очень интересный сервис для продвижения ссылками (Rookee), который автоматизирует большинство рутинных процессов. Как итог позиции вверх, а улыбка шире )) Также
Не забываем подписываться на бесплатную мультимедийную рассылку.
Форма для подписки расположена с права и с лева.

До встречи DelphiExpert.ru !!!



Похожие материалы

Последние из рубрики

Docker 22 Aug 2012 в 00:00 #
Я начинающий программист,и пытался вставить посмотреть исходник,и так и так вставлял выдает ошибку [Error] Unit1.pas(30): Undeclared identifier: ′IMG′ я понял что неизвестный идентификатор,какой может быть тип подскажите))
AndrewN 03 Jan 2012 в 00:00 #
А я бы сделал ProgressBar во Flash и положил бы его на форму благодаря ActiveX компоненту ShockwaveFlash.
HITMAN$$047 25 Nov 2011 в 00:00 #
Автору спасибо! Всё получилось!
Евгений 22 Jul 2011 в 00:00 #
За идею автору спасибо. Немного переделал чтобы получился квадрат с 4 кубиками и один из них другим цветом, который бегает по кругу по очереди вставая на места других кубиков.
Владимир 27 May 2011 в 00:00 #
Для Новичка хорошо.Давайте ещё.
Владимир.

ОтменитьДобавить комментарий