unit1.pas
来自「Delphi7编程80例(完全版)」· PAS 代码 · 共 1,476 行 · 第 1/3 页
PAS
1,476 行
vup:=falsE;
vright2left:=falsE;
vleft2right:=false;
vdown2up:=false;
vup2down:=falsE;
if(speedbutton15.left+48=Panel1.left)and(speedbutton15.top=Panel1.top) then
vright:=true;
if(speedbutton15.left-48=Panel1.left)and(speedbutton15.top=Panel1.top) then
vleft:=true;
if(speedbutton15.left=Panel1.left)and(speedbutton15.top-40=Panel1.top) then
vup:=true;
if(speedbutton15.left=Panel1.left)and(speedbutton15.top+40=Panel1.top) then
vdown:=true;
end;
begin
detect;
if(vright=true)and(vleft2right=false) then
begin
x:=speedbutton15.left;
y:=speedbutton15.top;
speedbutton15.left:=Panel1.left;
speedbutton15.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vright2left:=true;
end;
if(vleft=true)and(vright2left=false) then
begin
x:=speedbutton15.left;
y:=speedbutton15.top;
speedbutton15.left:=Panel1.left;
speedbutton15.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
end;
if(vup=true)and(vup2down=falsE) then
begin
x:=speedbutton15.left;
y:=speedbutton15.top;
speedbutton15.left:=Panel1.left;
speedbutton15.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=true;
end;
if(vdown=true)and(vup2down=falsE) then
begin
x:=speedbutton15.left;
y:=speedbutton15.top;
speedbutton15.left:=Panel1.left;
speedbutton15.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=false;
end;
end;
procedure TForm1.SpeedButton16Click(Sender: TObject);
procedure detect;
begin
vright:=falsE;
vleft:=false;
vdown:=false;
vup:=falsE;
vright2left:=falsE;
vleft2right:=false;
vdown2up:=false;
vup2down:=falsE;
if(speedbutton16.left+48=Panel1.left)and(speedbutton16.top=Panel1.top) then
vright:=true;
if(speedbutton16.left-48=Panel1.left)and(speedbutton16.top=Panel1.top) then
vleft:=true;
if(speedbutton16.left=Panel1.left)and(speedbutton16.top-40=Panel1.top) then
vup:=true;
if(speedbutton16.left=Panel1.left)and(speedbutton16.top+40=Panel1.top) then
vdown:=true;
end;
begin
detect;
if(vright=true)and(vleft2right=false) then
begin
x:=speedbutton16.left;
y:=speedbutton16.top;
speedbutton16.left:=Panel1.left;
speedbutton16.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vright2left:=true;
end;
if(vleft=true)and(vright2left=false) then
begin
x:=speedbutton16.left;
y:=speedbutton16.top;
speedbutton16.left:=Panel1.left;
speedbutton16.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
end;
if(vup=true)and(vup2down=falsE) then
begin
x:=speedbutton16.left;
y:=speedbutton16.top;
speedbutton16.left:=Panel1.left;
speedbutton16.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=true;
end;
if(vdown=true)and(vup2down=falsE) then
begin
x:=speedbutton16.left;
y:=speedbutton16.top;
speedbutton16.left:=Panel1.left;
speedbutton16.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=false;
end;
end;
procedure TForm1.SpeedButton17Click(Sender: TObject);
procedure detect;
begin
vright:=falsE;
vleft:=false;
vdown:=false;
vup:=falsE;
vright2left:=falsE;
vleft2right:=false;
vdown2up:=false;
vup2down:=falsE;
if(speedbutton17.left+48=Panel1.left)and(speedbutton17.top=Panel1.top) then
vright:=true;
if(speedbutton17.left-48=Panel1.left)and(speedbutton17.top=Panel1.top) then
vleft:=true;
if(speedbutton17.left=Panel1.left)and(speedbutton17.top-40=Panel1.top) then
vup:=true;
if(speedbutton17.left=Panel1.left)and(speedbutton17.top+40=Panel1.top) then
vdown:=true;
end;
begin
detect;
if(vright=true)and(vleft2right=false) then
begin
x:=speedbutton17.left;
y:=speedbutton17.top;
speedbutton17.left:=Panel1.left;
speedbutton17.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vright2left:=true;
end;
if(vleft=true)and(vright2left=false) then
begin
x:=speedbutton17.left;
y:=speedbutton17.top;
speedbutton17.left:=Panel1.left;
speedbutton17.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
end;
if(vup=true)and(vup2down=falsE) then
begin
x:=speedbutton17.left;
y:=speedbutton17.top;
speedbutton17.left:=Panel1.left;
speedbutton17.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=true;
end;
if(vdown=true)and(vup2down=falsE) then
begin
x:=speedbutton17.left;
y:=speedbutton17.top;
speedbutton17.left:=Panel1.left;
speedbutton17.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=false;
end;
end;
procedure TForm1.SpeedButton18Click(Sender: TObject);
procedure detect;
begin
vright:=falsE;
vleft:=false;
vdown:=false;
vup:=falsE;
vright2left:=falsE;
vleft2right:=false;
vdown2up:=false;
vup2down:=falsE;
if(speedbutton18.left+48=Panel1.left)and(speedbutton18.top=Panel1.top) then vright:=true;
if(speedbutton18.left-48=Panel1.left)and(speedbutton18.top=Panel1.top) then vleft:=true;
if(speedbutton18.left=Panel1.left)and(speedbutton18.top-40=Panel1.top) then vup:=true;
if(speedbutton18.left=Panel1.left)and(speedbutton18.top+40=Panel1.top) then vdown:=true;
end;
begin
detect;
if(vright=true)and(vleft2right=false) then
begin
x:=speedbutton18.left;
y:=speedbutton18.top;
speedbutton18.left:=Panel1.left;
speedbutton18.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vright2left:=true;
end;
if(vleft=true)and(vright2left=false) then
begin
x:=speedbutton18.left;
y:=speedbutton18.top;
speedbutton18.left:=Panel1.left;
speedbutton18.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
end;
if(vup=true)and(vup2down=falsE) then
begin
x:=speedbutton18.left;
y:=speedbutton18.top;
speedbutton18.left:=Panel1.left;
speedbutton18.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=true;
end;
if(vdown=true)and(vup2down=falsE) then
begin
x:=speedbutton18.left;
y:=speedbutton18.top;
speedbutton18.left:=Panel1.left;
speedbutton18.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=false;
end;
end;
procedure TForm1.SpeedButton19Click(Sender: TObject);
procedure detect;
begin
vright:=falsE;
vleft:=false;
vdown:=false;
vup:=falsE;
vright2left:=falsE;
vleft2right:=false;
vdown2up:=false;
vup2down:=falsE;
if(speedbutton19.left+48=Panel1.left)and(speedbutton19.top=Panel1.top) then
vright:=true;
if(speedbutton19.left-48=Panel1.left)and(speedbutton19.top=Panel1.top) then
vleft:=true;
if(speedbutton19.left=Panel1.left)and(speedbutton19.top-40=Panel1.top) then
vup:=true;
if(speedbutton19.left=Panel1.left)and(speedbutton19.top+40=Panel1.top) then
vdown:=true;
end;
begin
detect;
if(vright=true)and(vleft2right=false) then
begin
x:=speedbutton19.left;
y:=speedbutton19.top;
speedbutton19.left:=Panel1.left;
speedbutton19.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vright2left:=true;
end;
if(vleft=true)and(vright2left=false) then
begin
x:=speedbutton19.left;
y:=speedbutton19.top;
speedbutton19.left:=Panel1.left;
speedbutton19.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
end;
if(vup=true)and(vup2down=falsE) then
begin
x:=speedbutton19.left;
y:=speedbutton19.top;
speedbutton19.left:=Panel1.left;
speedbutton19.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=true;
end;
if(vdown=true)and(vup2down=falsE) then
begin
x:=speedbutton19.left;
y:=speedbutton19.top;
speedbutton19.left:=Panel1.left;
speedbutton19.top:=Panel1.top;
Panel1.lefT:=x;
Panel1.top:=y;
vup2down:=false;
end;
end;
procedure TForm1.Newgame1Click(Sender: TObject);
begin
RanNums:=random(20); //显示speedbutton1上的数字
if RanNums=0 then
RanNums:=RanNums+1;
a1:=RanNums;
speedbutton1.caption:=IntToStr(RanNums);
repeat //显示speedbutton2上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a2:=RanNums;
speedbutton2.caption:=inttostr(RanNums);
until(a2<>a1);
repeat //显示speedbutton3的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a3:=RanNums;
speedbutton3.caption:=inttostr(RanNums);
until(a3<>a1)and(a3<>a2);
repeat //显示speedbutton4上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a4:=RanNums;
speedbutton4.caption:=inttostr(RanNums);
until(a4<>a1)and(a4<>a2)and(a4<>a3);
repeat //显示speedbutton5上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a5:=RanNums;
speedbutton5.caption:=inttostr(RanNums);
until(a5<>a1)and(a5<>a2)and(a5<>a3)and(a5<>a4);
repeat //显示speedbutton6上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a6:=RanNums;
speedbutton6.caption:=inttostr(RanNums);
until(a6<>a1)and(a6<>a2)and(a6<>a3)and(a6<>a4)and(a6<>a5);
repeat //显示speedbutton7上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a7:=RanNums;
speedbutton7.caption:=inttostr(RanNums);
until(a7<>a1)and(a7<>a2)and(a7<>a3)and(a7<>a4)and(a7<>a5)and(a7<>a6);
repeat //显示speedbutton8上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a8:=RanNums;
speedbutton8.caption:=inttostr(RanNums);
until(a8<>a1)and(a8<>a2)and(a8<>a3)and(a8<>a4)and(a8<>a5)and(a8<>a6)and(a8<>a7);
repeat //显示speedbutton9上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a9:=RanNums;
speedbutton9.caption:=Inttostr(RanNums);
until(a9<>a1)and(a9<>a2)and(a9<>a3)and(a9<>a4)and(a9<>a5)and(a9<>a6)and(a9<>a7)
and(a9<>a8);
repeat //显示speedbutton10上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a10:=RanNums;
speedbutton10.caption:=inttostr(RanNums);
until(a10<>a1)and(a10<>a2)and(a10<>a3)and(a10<>a4)and(a10<>a5)and(a10<>a6)and(a10<>a7)
and(a10<>a8)and(a10<>a9);
repeat //显示speedbutton11上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a11:=RanNums;
speedbutton11.caption:=inttostr(RanNums);
until(a11<>a1)and(a11<>a2)and(a11<>a3)and(a11<>a4)and(a11<>a5)and(a11<>a6)and(a11<>a7)
and(a11<>a8)and(a11<>a9)and(a11<>a10);
repeat //显示speedbutton12上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a12:=RanNums;
speedbutton12.caption:=inttostr(RanNums);
until(a12<>a1)and(a12<>a2)and(a12<>a3)and(a12<>a4)and(a12<>a5)and(a12<>a6)and(a12<>a7)
and(a12<>a8)and(a12<>a9)and(a12<>a10)and(a12<>a11);
repeat //显示speedbutton13上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a13:=RanNums;
speedbutton13.caption:=inttostr(RanNums);
until(a13<>a1)and(a13<>a2)and(a13<>a3)and(a13<>a4)and(a13<>a5)and(a13<>a6)and(a13<>a7)
and(a13<>a8)and(a13<>a9)and(a13<>a10)and(a13<>a11)and(a13<>a12);
repeat //显示speedbutton14上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a14:=RanNums;
speedbutton14.caption:=inttostr(RanNums);
until(a14<>a1)and(a14<>a2)and(a14<>a3)and(a14<>a4)and(a14<>a5)and(a14<>a6)and(a14<>a7)
and(a14<>a8)and(a14<>a9)and(a14<>a10)and(a14<>a11)and(a14<>a12)and(a14<>a13);
repeat //显示speedbutton15上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a15:=RanNums;
speedbutton15.caption:=inttostr(RanNums);
until(a15<>a1)and(a15<>a2)and(a15<>a3)and(a15<>a4)and(a15<>a5)and(a15<>a6)and(a15<>a7)
and(a15<>a8)and(a15<>a9)and(a15<>a10)and(a15<>a11)and(a15<>a12)and(a15<>a13)
and(a15<>a14);
repeat //显示speedbutton16上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a16:=RanNums;
speedbutton16.caption:=inttostr(RanNums);
until(a16<>a1)and(a16<>a2)and(a16<>a3)and(a16<>a4)and(a16<>a5)and(a16<>a6)and(a16<>a7)
and(a16<>a8)and(a16<>a9)and(a16<>a10)and(a16<>a11)and(a16<>a12)and(a16<>a13)
and(a16<>a14)and(a16<>a15);
repeat //显示speedbutton17上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a17:=RanNums;
speedbutton17.caption:=inttostr(RanNums);
until(a17<>a1)and(a17<>a2)and(a17<>a3)and(a17<>a4)and(a17<>a5)and(a17<>a6)and(a17<>a7)
and(a17<>a8)and(a17<>a9)and(a17<>a10)and(a17<>a11)and(a17<>a12)and(a17<>a13)
and(a17<>a14)and(a17<>a15)and(a17<>a16);
repeat //显示speedbutton18上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a18:=RanNums;
speedbutton18.caption:=inttostr(RanNums);
until(a18<>a1)and(a18<>a2)and(a18<>a3)and(a18<>a4)and(a18<>a5)and(a18<>a6)and(a18<>a7)
and(a18<>a8)and(a18<>a9)and(a18<>a10)and(a18<>a11)and(a18<>a12)and(a18<>a13)
and(a18<>a14)and(a18<>a15)and(a18<>a16)and(a18<>a17);
repeat //显示speedbutton19上的数字
RanNums:=random(20);
if RanNums=0 then RanNums:=RanNums+1;
a19:=RanNums;
speedbutton19.caption:=inttostr(RanNums);
until(a19<>a1)and(a19<>a2)and(a19<>a3)and(a19<>a4)and(a19<>a5)and(a19<>a6)and(a19<>a7)
and(a19<>a8)and(a19<>a9)and(a19<>a10)and(a19<>a11)and(a19<>a12)and(a19<>a13)
and(a19<>a14)and(a19<>a15)and(a19<>a16)and(a19<>a17)and(a19<>a18);
end;
procedure TForm1.Exitgame1Click(Sender: TObject);
begin
Application.terminate;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
If OpenPictureDialog1.Execute Then //设置背景图
Begin
Image1.Stretch:=True;
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); //载入背景图片
end;
end;
procedure TForm1.N3Click(Sender: TObject);
begin
If ColorDialog1.Execute Then //设置数字颜色
Begin
SpeedButton1.Font.Color:=ColorDialog1.Color;
SpeedButton2.Font.Color:=ColorDialog1.Color;
SpeedButton3.Font.Color:=ColorDialog1.Color;
SpeedButton4.Font.Color:=ColorDialog1.Color;
SpeedButton5.Font.Color:=ColorDialog1.Color;
SpeedButton6.Font.Color:=ColorDialog1.Color;
SpeedButton7.Font.Color:=ColorDialog1.Color;
SpeedButton8.Font.Color:=ColorDialog1.Color;
SpeedButton9.Font.Color:=ColorDialog1.Color;
SpeedButton10.Font.Color:=ColorDialog1.Color;
SpeedButton11.Font.Color:=ColorDialog1.Color;
SpeedButton12.Font.Color:=ColorDialog1.Color;
SpeedButton13.Font.Color:=ColorDialog1.Color;
SpeedButton14.Font.Color:=ColorDialog1.Color;
SpeedButton15.Font.Color:=ColorDialog1.Color;
SpeedButton16.Font.Color:=ColorDialog1.Color;
SpeedButton17.Font.Color:=ColorDialog1.Color;
SpeedButton18.Font.Color:=ColorDialog1.Color;
SpeedButton19.Font.Color:=ColorDialog1.Color;
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?