📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
Shape1: TShape;
Shape2: TShape;
Timer2: TTimer;
Button1: TButton;
procedure Timer1Timer(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Timer2Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Shape1.Left:=Shape1.Left+10;
if Shape1.Left>400 then
Shape1.Left:=0;
end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=37 then Shape1.Left:=Shape1.Left-5;
if Key=39 then Shape1.Left:=Shape1.Left+5;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
var
x1,y1,x2,y2:Integer;
begin
Shape2.Top:=Shape2.Top-10;
if Shape2.Top=0 then
begin
Timer2.Enabled:=False;
Shape2.Top:=300;
end;
x1:=Shape1.Left + Shape1.Width div 2;
y1:=Shape1.Top + Shape1.Height div 2;
x2:=Shape2.Left + Shape2.Width div 2;
y2:=Shape2.Top + Shape2.Height div 2;
if (x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)<1000 then
begin
Timer1.Enabled:=False;
Timer2.Enabled:=False;
ShowMessage('你击中了');
Shape2.Top:=300;
Timer1.Enabled:=True;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer2.Enabled:=True;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -