![]() |
Objecte ansprechen die während der Laufzeit erstellt wurden
Hi,
ich hab eine Frage, wenn ich Beispielsweise wie folgt 10 Edits erstelle, wie greife ich anschließend auf diese zu? Also
Delphi-Quellcode:
Wie kann ich jetzt nachträglich die Eigenschaft "Text" von dem- sagen wir 2ten- erstellen Editfeld verändern?
for i:=1 to 10 do
begin with TEdit.create do begin Width:=20; Height:=40; Left:=0+(20*i); Top:=10; end; end; MfG Spiderpig PS: Code ungeprüft, sollte aber glaub ich funktionieren... |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
Hallo,
Gib den TEdits einen Namen und sprich sie dann per FindComponent an. |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
legt dir ein myEdit: array[1..10] of TEdit an und speichere die Edit-Referenzen dort.
|
Re: Objecte ansprechen die während der Laufzeit erstellt wur
Entweder in einer TObjectlist selber verwalten oder Namen vergeben und mit FindComponent() suchen fällt mir auf die Schnelle ein.
|
Re: Objecte ansprechen die während der Laufzeit erstellt wur
also sieht das dann so aus?
Delphi-Quellcode:
?
for i:=1 to 10 do
begin with TEdit.create do begin Width:=20; Height:=40; Left:=0+(20*i); Top:=10; name:='MyEdit' + inttostring(i); end; end; |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
So in der Art. Du solltest aber noch einen Owner angeben und den Parent setzen.
|
Re: Objecte ansprechen die während der Laufzeit erstellt wur
Ich würds so machen, wie Bernhard in #3 vorschlägt
Delphi-Quellcode:
var MyEdit: Array[1..10] of TEdit;
... for i:=1 to 10 do begin MyEdit[i] := TEdit.Create; MyEdit[i].Width := 20; ... end; |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
Zitat:
Delphi-Quellcode:
const
MAX_MYEDITS = 10; var MyEdits: Array[1..MAX_MYEDITS] of TEdit; i: Byte; //.. for i := Low(MyEdits) to High(MyEdits) do begin MyEdits[i] := TEdit.Create(Self); MyEdits[i].Width := 20; // etc ... end; |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
auf jeden Fall nicht mit FindComponent.
Wie der Name bereits sagt wird anhand des Namen gesucht was Rechenzeit kostet. Und warum suchen wenn man sich die Suche sparen kann? ;-) Wenn man aus dem Haus geht steckt mit den Schlüssel ja auch in die Tasche um beim zurück kommen zu wissen wo er ist. FindComponent an dieser Stelle zu verwenden wäre wie: Man verlässt das Haus und wirft den Schlüssel dann über die Schulter im Park weg damit man bei der Rückkehr diesen erst suchen muss um wieder in die Wohnung zu kommen. |
Re: Objecte ansprechen die während der Laufzeit erstellt wur
anschauliche Beschreibung :mrgreen:
Ich machs ohne Find, schließlich werf ich auch nciht meinen Schlüssel weg :zwinker: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:36 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-2025 by Thomas Breitkreuz