Hallo Leute,
ich habe ein Problem und zwar will ich ein PINK-PONK programmiern. Es funktioniert ja soweit mit an den Seiten abprallen und so, aber ich kann den balken nicht richtig bewegen bzw. garnicht. Beim Compilieren brinnt er aber keinen Fehler. Wer kann mir helfen?
CODE:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const radius=15;
balkenbreite=70;
balkenhoehe=15;
begin
loeschcolor:=form1.color;
loeschpen:=form1.color;
loeschbrush:=form1.color;
canvas.brush.color:=clblue;
canvas.pen.color:=clblue;
balkenmitte := form1.clientwidth div 2;
balkenbx:=4;
x:=width div 2;
y:=height div 2; // Position
bx:= 2;
by:=2;
canvas.pen.color:=clgreen;
canvas.Brush.color:=clyellow;
rechteck.Left := 80;
rechteck.Top := 70;
rechteck.Right := 130;
rechteck.Bottom := 120;
form1.Canvas.Rectangle(rechteck); //Rechteck
repeat
stop:=false;
form1.canvas.Pen.Color:=clgreen;
form1.canvas.Brush.color:=clyellow;
canvas.Ellipse(x-radius,y-radius,x+radius,y+radius); //malen
sleep(5); //warten
form1.canvas.Pen.color:=loeschpen;
form1.canvas.Brush.color:=loeschbrush;
form1.Canvas.ellipse(x-radius,y-radius,x+radius,y+radius); //loeschen#
x:=x+bx;
y:=y+by; //rechnen
if (x<radius) or(x>form1.clientwidth-radius) then begin
bx:=-bx;
end;
if (y<radius) or(y>form1.ClientHeight-radius) then begin
by:=-by;
end;
application.ProcessMessages;
until stop=true;
end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=vk_F1 then begin
rechteck.Left:=rechteck.left-5;
rechteck.bottom:=rechteck.bottom-5;
rechteck.Right:=rechteck.right-5;
rechteck.Top:=rechteck.top-5;
end;
if Key=vk_F2 then begin
rechteck.Left:=rechteck.left+5;
rechteck.bottom:=rechteck.bottom+5;
rechteck.Right:=rechteck.right+5;
rechteck.Top:=rechteck.top+5;
end;
end;
end.
[edit=MrSpock]Doppelpost gelöscht. Code Tags gesetzt. Mfg, MrSpock[/edit]