![]() |
Objekte mi gleichem namen
Hallo
Ich habe 24 shape´s shape1 bis shape24 kann ich die irgendwie hochzählen? oder in einem array verwalten? stephie |
Re: Objekte mi gleichem namen
Entweder
![]() |
Re: Objekte mi gleichem namen
wie genau würdest du das array machen?
|
Re: Objekte mi gleichem namen
Delphi-Quellcode:
Dann halt die Shapes dynamisch erzeugen. Und dann kannst du halt mit (Dyn)Shapes[i] auf die Shapes zugreifen.
Shapes: Array[1..10] of TShape; // so
DynShapes: Array of TShape; // oder so^^ |
Re: Objekte mi gleichem namen
die 24 shapes die ich habe muss ich die dann umbenennen oder raft der das dann?
|
Re: Objekte mi gleichem namen
Du musst/solltest die Shapes alle während der Laufzeit erzeugen.. dann hast du das Problem nicht..
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin Shapes[1] := TShape.Create(Self); // vielleicht auch ohne die Klammer.. ka ob shapes ein Parent brauchen^^ with Shapes[1] do begin Parent := Self; // wichtig wenn die Klammer nötig ist^^ Left := 100; Top := 50; Width:= 150; Height:= 150; ... end; // das halt für jedes Shape end; |
Re: Objekte mi gleichem namen
ok danke
|
Re: Objekte mi gleichem namen
Hi,
ich sehe aber auch kein Problem die Shapes manuell zu zuweisen:
Delphi-Quellcode:
[edit] Fehler verbessert [/edit]
ShapeArr: array [0..23] of TShape; // 24 Shapes;
procedure InitShapes; var I: Integer; begin // Wenn die Shapes shape0..shape23 heißen: for I := 0 to 23 do begin ShapeArr[I] := (FindComponent('shape' + IntToStr(I)) as TShape); end; // Wenn die Shapes nicht shape0..shape23 heißen: ShapeArr[0] := Shape1; ShapeArr[1] := ShapeTop; ShapeArr[2] := ShapeIrgendwas; // ... end; |
Re: Objekte mi gleichem namen
Spider, fehlt da nicht noch ein "as TShape" bei deinem FindComponent? :?
|
Re: Objekte mi gleichem namen
Hoppla :oops:
Klar fehlt das. Ich verbessere es gleich ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 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