Entwickler-Ecke
Sonstiges (Delphi) - DEC????
Sanne - Di 17.12.02 20:55
Titel: DEC????
also ich steh vor folgendem problem:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33:
| var i: integer; aktgroesse: integer; groesse: integer;
begin groesse:=strtoin(label9.caption); aktgroesse:=0; i:=7; scheibe[i]:=power(2,i); repeat aktgroesse:=aktgroesse+scheibe[i]; if groesse<aktgroesse then aktgroesse:=aktgroesse-scheibe[i]; dec[i]; until i<0; ok:=groesse>aktgroesse if ok then case i of 7:DBcheckbox1.checked:=true; 6:DBcheckbox2.checked:=true; 5:DBcheckbox3.checked:=true; 4:DBcheckbox4.checked:=true; 3:DBcheckbox5.checked:=true; 2:DBcheckbox6.checked:=true; 1:DBcheckbox7.checked:=true; 0:DBcheckbox8.checked:=true; . ..
...... end; |
jetzt hab ich das problem- daß der die eckige klammer von scheibe[i] als variable net will- aber ich muß das doch irgendwie definieren oder? wie soll ich das denn dann machen???
hitstec - Di 17.12.02 21:06
Wenn ich mich nict täusche muss es
heißen.
Und was ist scheibe für eine Variable?
Sanne - Di 17.12.02 21:10
scheibe ist n shape- was für ne variable weiß ich nicht- weiß ja auch nicht wie ich die definieren soll- i ist ja veränderlich und das soll dann für alle scheiben gelten...
hitstec - Di 17.12.02 21:13
Shape ist ja auch ein Object und kein Integer wie i.
Sehe ich das richtig, dass du auf die Größe aller Shapes zugreifen möchtest?
Sanne - Di 17.12.02 21:32
ja ich will auf die größe der shapes zurückgreifen- die sind ja definiert mit 2^i- i wird ja von 7 bis 0 verkleinert- somit verändert sich ja auch die größe der shapes- zumindest sollte es das tun... weiß nur nicht iwe!!!! :(
hitstec - Di 17.12.02 23:40
Um auf die Shapegröße zuzugreifen musst du auch die Eigenschaft Größe auslesen. Das geht so:
Nehmen wir mal an du hast 10 Shapes aud deinem Formular. Benenne Sie einfach Scheibe1, Scheibe2, Scheibe3 ... Scheibe10.
Nun kannst du mit dem Befehl FindComponent mit Verbindung der Laufvariable i die Größe der Shapes in einer for-Schleife auswerten.
Quelltext
1: 2: 3: 4:
| groesse:=0; for i:=1 to 10 do begin groesse:=groesse+(FindComponent('Scheibe'+IntToStr(i)) as TShape).Height; end; |
Sanne - Mi 18.12.02 01:00
klingt logisch- dann werd ich das mal so probieren- kann ich dann das dec komplett vergessen oder?
hitstec - Mi 18.12.02 10:08
Ähmm, ja.
Ex0rzist - Mi 18.12.02 14:07
So wie ich das sehe, musst du deine Scheibe so deklarieren: Var Scheibe: Array of TShape
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!