Показать сообщение отдельно
  #11  
Старый 16.03.2012, 15:46
nixel nixel вне форума
Начинающий
 
Регистрация: 12.12.2011
Адрес: Москва
Сообщения: 150
Версия Delphi: XE2-U4
Репутация: 131
По умолчанию

Цитата:
Сообщение от Mp3
то есть этот код неправильный получается?
Это код для других целей.

Цитата:
Сообщение от Mp3
а вот это как??можно поподробнее плиз
Что-то вроде такого. На сверх-правильность не претендую, просто как простейшая реализация. Даже без каких-то функций
Код:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls,
  Vcl.Imaging.pngimage;

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

var
  Form1: TForm1;

implementation

{$R *.dfm}
var
  a: integer = 1;  //Перемещение по х
  b: integer = 1;  //перемещение по y

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

procedure TForm1.Button2Click(Sender: TObject);
begin
  Timer1.Enabled:= false;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var temp: integer;
begin
  if (Image1.Top <= 0) or ((Image1.Top + Image1.Height) >= Form1.ClientHeight) then b:= -b;
  if (Image1.Left <= 0) or ((Image1.Left + Image1.Width) >= Form1.ClientWidth) then a:= -a;
  Image1.Left:= Image1.Left + a;
  Image1.Top:= Image1.Top + b;
end;

end.

Соответственно, как ты будешь менять а и b уже твое дело. У меня они просто по единице каждая.

Добавлено:
У меня Delphi XE2, соответственно если будешь пытаться запускать на младших версиях, будет ругаться на подключаемые модули. Скопируй код обработчиков вручную.
Движение картинки - файл проекта
Project1 - ехе-файл, разбитый на два архива. Открывать из part1 соответственно. Если будет ругаться антивирь - не переживай, просто я ехе сжал через UPX, а то в оригинале он занимает 7 с половиной метров -_- (vcl такой vcl...)
Вложения
Тип файла: rar Движение картинки.rar (5.5 Кбайт, 4 просмотров)
Тип файла: rar Project1.part1.rar (960.0 Кбайт, 1 просмотров)
Тип файла: rar Project1.part2.rar (433.4 Кбайт, 1 просмотров)
Ответить с цитированием