Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi quadrat verändern (https://www.delphipraxis.net/73870-quadrat-veraendern.html)

any_key 25. Jul 2006 01:50


quadrat verändern
 
aHoyHoy
bin gerade mal auf die komische idee gekommen ein quadrat verändern zu wollen... das ich mit canvas male
eigentlich sollte es sich auch vergrößern aber irgendwie funzt das nicht
Code:
procedure TForm1.Button1Click(Sender: TObject);
var
position1:integer;
i:integer;
begin
position1:=5;
canvas.MoveTo(clientwidth div 2, clientheight div 2);
for i:=0 to -1 do
position1:= position1 + 5;
canvas.moveTo(clientwidth div 2 + position1, clientheight div 2 - position1);
canvas.lineto(clientwidth div 2 + position1, clientheight div 2 + position1);
canvas.LineTo(clientwidth div 2 - position1, clientheight div 2 + position1);
canvas.lineto(clientwidth div 2 - position1, clientheight div 2 - position1);
canvas.lineto(clientwidth div 2 + position1, clientheight div 2 - position1);
end;
eigentlich müsste sich das quadrat doch mit jedem durchgang vergrößern....
oder hab ich da was falsch verstanden...?

jmd anders 25. Jul 2006 01:58

Re: quadrat verändern
 
diese schleife kann nicht funktionieren
sie läuft hoch aber der wert, der erreicht werden soll liegt unter dem start wert.
(0, -1)
Delphi-Quellcode:
for i:=0 to -1 do


falls du mal so etwas vor hättest dann musst du sowas verwenden
Delphi-Quellcode:
for i:=0 downto -1 do
aber deine schleife sollte ja an sich hochlaufen

Delphi-Quellcode:
for i:=0 to 10 do
begin
  //anweisungEN die ausgeführt werden sollen
end;
wenn du mehrere anweisungen in einer schleife bearbeiten möchtest musst du ein begin und end verwenden




So nun konkret zu deinem Problem, wann soll denn das Quadrat vergrößern?
wenn du einen button drückst?
oder von alleine nach bestimmter zeit?

any_key 25. Jul 2006 02:04

Re: quadrat verändern
 
ah danke
(hatte die schleife von irgendwo anders übernommen weil ich nicht mehr genau wusste wie es ging...)
jetzt klappt es zwar aber was ich eigentlich erreichen wollte klappt noch nicht ganz
undzwar wollte ich das so machen das sich das quadrat nach und nach vergrößert
also nach jedem schleifendurchgang kurz warten, dann das vorher gemalte wieder löschen und ein etwas größeres quadrat malen

//hat sich schon erledigt - hab das jetzt mit nem timer gemacht
noch mal danke...


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz