Всем привет в этом уроке мы научимся создавать свой
анимированный 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 и выбираем нужную картинку.
Лично я пользовался вот этой:
скачать эту картинку в формате bmp
Далее переходим к компоненту timer, свойство interval ставим
100, свойство Enabled ставим true. Создаем обработчик событий (OnTimer) на нашем
таймере - два раза кликаем по нему и между словами begin end
пишем:
GoImgProgress(image1);
Вот и всё, теперь вы умеете создавать анимированный Progressbar
! Запускаем проект и наслаждаемся !)
|