Einzelnen Beitrag anzeigen

Benutzerbild von Tormentor32
Tormentor32

Registriert seit: 27. Okt 2005
Ort: Düsseldorf
369 Beiträge
 
Delphi XE5 Professional
 
#21

Re: Verstehe die Zählschleifen und VCL-Komponenten nicht-Sch

  Alt 8. Jan 2007, 11:17
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var n: array[0..49] of TCheckBox;
i: integer;
n.top: integer; // Das kannst du nicht machen
begin
for i:=0 to 49 - 1 do // von 0 bis 49 heißt 50, die -1 ist überflüssig
begin
n[i]:=TCheckbox.Create(Form1);
n[i].parent:=Form1;
n[i].width := 90; // beispielwerte, ist aber nötig, sonst kann man die nicht sehen
n[i].height := 30;
n[i].left:=100; // übverflüssig s.u.
n[i].top:=100; // überflüssig, da du direkt danach den Wert neu setzt
n[i].top:= 102 + n[i].height*i; // sonst würde trotzdem jede Checkbox an der Gleichen stelle sein
n[i].left:= 102 + n[i].width*i;
n[i].show; // hatte ich vergessen, sorry
end;
sollte so klappen

Das mit dem freigeben musst du machen, weil du mit dem aufruf
n[i] := TCheckbox.Create; Speicherplatz für die Checkbox reservierst. Wenn du diesen Speicherplatz beim Beenden des Programms nicht freigibst, dann kann er nicht mehr genutzt werden => Speicherleck

ps: Es gibt übrigens die Edit Funktion, es ist nicht nötig 3 Beiträge hintereinander zu schreiben...
Richard Mahr
  Mit Zitat antworten Zitat