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

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

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2013, 18:25   #1
grib_aga
Пользователь
 
Регистрация: 09.01.2013
Сообщений: 20
По умолчанию Проблемы при движении изображений

Задумка такая, есть два изображения(Томат и Банан, но не суть) и два таймера, на 3 сек и на 5 сек т.е. нажимаем на старт, включаются таймеры, проходит 3 сек и Банан начинает движение вправо формы, через 2 сек(5 - 3) начинает движение Томат вправо, для плавного передвижения использую sleep().

Не работает, изображения двигаются рывками, в чем ошибка?
Проект прилагаю.
Вложения
Тип файла: rar PictMove.rar (245.7 Кб, 12 просмотров)
grib_aga вне форума Ответить с цитированием
Старый 04.05.2013, 18:56   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, jpeg, ExtCtrls;

type
  TForm1 = class(TForm)
    Image1: TImage;
    Image2: TImage;
    Button1: TButton;
    Timer1: TTimer;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  count: integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  count := 0;
  Timer1.Enabled := true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if count < 60 then
    inc(count)
  else
    Image2.Left := Image2.Left + 1;
  if Image1.Left > 455 then
    Timer1.Enabled := false;
  Image1.Left := Image1.Left + 1;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Halt;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Timer1.Interval := 50;
end;

end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 04.05.2013 в 18:58.
BDA вне форума Ответить с цитированием
Старый 05.05.2013, 14:16   #3
grib_aga
Пользователь
 
Регистрация: 09.01.2013
Сообщений: 20
По умолчанию

BDA, спасибо, проблема решена.
grib_aga вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача о муравьях, красящих игровое поле при движении Sega_AS Паскаль, Turbo Pascal, PascalABC.NET 3 27.04.2012 15:04
Алгоритм обнаружения препятствия при движении spein JavaScript, Ajax 6 03.01.2012 11:11
Графика, отрисовка примитива при движении мышью. KLOUH Помощь студентам 1 21.04.2011 13:21
При движении картинки происходит мерцание... Teen4jump Gamedev - cоздание игр: Unity, OpenGL, DirectX 14 11.07.2007 01:43
Мигание при движении Speeker Общие вопросы Delphi 1 14.02.2007 01:22