![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 16.06.2013
Сообщений: 1
|
![]() нужно написать программу- движения шара по линиям он останавливается в той точке, которая на картинке и не продолжает движение(поднятие вверх) unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Timer1: TTimer; procedure Button2Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure xx; procedure yy; procedure yy1; procedure tt; procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; x,y,z:integer; implementation {$R *.dfm} procedure TForm1.tt; begin Canvas.MoveTo(100, 50); Canvas.LineTo(100, 200); Canvas.LineTo(200, 200); Canvas.LineTo(200, 100); Canvas.LineTo(300, 100); Canvas.LineTo(300, 250); Canvas.LineTo(400, 250); end; procedure TForm1.xx; begin Canvas.Pen.Color:=clBtnFace; Canvas.Ellipse(x-z,y,50+x-z,50+y); Canvas.Pen.Color:=rgb(0,0,0); end; procedure TForm1.yy; begin Canvas.Pen.Color:=clBtnFace; Canvas.Ellipse(x,y-z,50+x,50+y-z); Canvas.Pen.Color:=rgb(0,0,0); end; procedure TForm1.yy1; begin Canvas.Pen.Color:=clBtnFace; Canvas.Ellipse(x,y+z,50+x,50+y+z); Canvas.Pen.Color:=rgb(0,0,0); end; procedure TForm1.Button2Click(Sender: TObject); begin Close end; procedure TForm1.Timer1Timer(Sender: TObject); begin z:=1; Canvas.Pen.Width := 1; tt; if y<150 then begin yy; y:=y+z; end; if x<150 then if (y=150) then begin xx; x:=x+z; end; if y>50 then if x=250 then begin yy1; y:=y-z; end; if x<250 then if y=250 then begin xx; x:=x+z; end; if x<350 then if y=50 then if x>=250 then begin xx; x:=x+z; end; if x<500 then if y>0 then if x>=350 then begin yy1; y:=y-z; end; if x<500 then if y=0 then begin xx; x:=x+z; end; if y<50 then if x=500 then begin yy; y:=y+z; end; if x<550 then if x>=500 then if y=50 then begin xx; x:=x+z; end; Canvas.Ellipse(x,y,50+x,50+y); tt; end; procedure TForm1.Button1Click(Sender: TObject); begin yy; yy1; xx; x:=100; y:=50; Timer1.Enabled:=true; end; procedure TForm1.Button3Click(Sender: TObject); begin Canvas.Brush.Color:=Random(10000000 ); end; procedure TForm1.Button4Click(Sender: TObject); begin InvalidateRect(0, nil, true); end; end. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не изменяется интерфейс моей программы при переходе с Delphi 7 на Delphi 2010 | Elvisnya | Общие вопросы Delphi | 3 | 28.04.2011 15:59 |
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 | 666dart666 | Помощь студентам | 11 | 04.11.2010 17:57 |
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism | savva-paladin | Софт | 18 | 02.10.2010 20:24 |
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? | redred | Общие вопросы Delphi | 10 | 11.12.2007 10:43 |
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? | dagarik | БД в Delphi | 7 | 22.10.2007 17:54 |