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