Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.01.2015, 22:11   #1
helper999999
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 45
По умолчанию Картинки в таймере

Подскажите как показывать кадры поочередно используя таймер. И все это в repeat.
пытался так но что то не получается

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Picture.LoadFromFile('0.png');
Image1.Picture.LoadFromFile('1.png');
Image1.Picture.LoadFromFile('2.png');
Image1.Picture.LoadFromFile('3.png');
Image1.Picture.LoadFromFile('4.png');
Image1.Picture.LoadFromFile('5.png');
Image1.Picture.LoadFromFile('6.png');
Image1.Picture.LoadFromFile('7.png');
end;
helper999999 вне форума Ответить с цитированием
Старый 25.01.2015, 22:16   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

забыл сделать счётчик.
Код:
//до таймера...
count:=0;
//в таймере...
inc(count);
if count=1 then Image1.Picture.LoadFromFile('0.png');
if count=2 yhen Image1.Picture.LoadFromFile('1.png');
...
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 25.01.2015, 22:18   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,544
По умолчанию

Код:
var PngIdx: Integer = 0;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Picture.LoadFromFile(IntToStr(PngIdx)+'.png');
PngIdx:=(PngIdx+1) mod 8;
end;
Arigato вне форума Ответить с цитированием
Старый 25.01.2015, 22:27   #4
helper999999
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 45
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Код:
var PngIdx: Integer = 0;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Picture.LoadFromFile(IntToStr(PngIdx)+'.png');
PngIdx:=(PngIdx+1) mod 8;
end;
шикарно спасибо за столь быстрый ответ =)
helper999999 вне форума Ответить с цитированием
Старый 26.01.2015, 17:56   #5
school_teacher
 
Регистрация: 13.10.2014
Сообщений: 3
По умолчанию

а можно ли вопрос а если я отрисовываю с помощью hBitmap, в отличии от ТС на winapi, как мне сделать. На форму я знаю как просто отрисовать

Код:
var
  hWindow: HWND;
  bmp,oldbmp: hBitmap;
  dc,memdc: HDC;

//****
function WinProc(Handle: HWND; Msg: UINT; WParam: Integer; lParam: Integer): Integer;stdcall;
var
  ps: PAINTSTRUCT;
begin
  Result:=0;
  case msg of
    WM_CREATE:
      begin
        dc:=GetDC(0);
        memdc:=CreateCompatibleDC(dc);
        bmp:=LoadRes(hInstance,'image1','PNG');
        oldbmp:=SelectObject(memdc, bmp);
      end;
    WM_PAINT:
      begin
        BeginPaint(Handle,ps);
        BitBlt(ps.hdc,414,383,34,34,memdc,0,0,SRCCOPY);
        EndPaint(Handle,ps);
      end;
    WM_DESTROY:
      begin
        DeleteObject(SelectObject(memdc,oldbmp));
        DeleteDC(memdc);
        ReleaseDC(0,dc);
        PostQuitMessage(0);
        Exit;
      end;
  end;
  Result:=DefWindowProc(Handle,Msg,WParam,LParam);
end;
LoadRes самапал, функция загрузки из ресурсов
school_teacher вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объект Graphics в таймере Стремящийся Общие вопросы по Java, Java SE, Kotlin 1 02.12.2012 20:03
C# Создание таймера в таймере dasvex Помощь студентам 2 02.11.2012 14:46
копирование в таймере wm_leviathan C# (си шарп) 0 08.12.2011 16:27
Переменные в таймере. Alex Cones Win Api 7 06.11.2010 20:54
Повторяющееся событие в таймере kta87 Общие вопросы Delphi 3 21.03.2010 10:08