![]() |
Auf Objekt in der TObjectList zugreifen
Hi DP, ich möchte ein zur Laufzeit generiertes Objekt über die TObjectList mit neuen Informationen versorgen nur weiß ich jetzt nicht wie ich wieder auf das Objekt zugreifen kann (Google wollte mir auch nicht helfen). Alternativ hätte ich noch den Array nur weiß ich nicht ob das so prickelnd ist :mrgreen:
Danke Luki :spin: |
AW: Auf Objekt in der TObjectList zugreifen
Normalerweise müsste mit einem hart gecasteten Typen gehen, so mache ich es immer:
Delphi-Quellcode:
TFoo(DeineListe[index]).IrgendEtwas
|
AW: Auf Objekt in der TObjectList zugreifen
Ich glaube ohne etwas Code und was nicht funktioniert wie erwartet stellt sich jeder etwas anderes drunter vor.
|
AW: Auf Objekt in der TObjectList zugreifen
Halt Moment, wo bitte habe ich geschrieben das etwas nicht geht? Wenn es der Fall wäre würde ich Code posten doch jetzt wollte ich nur Fragen ob jemand weiß, oder einen Link zu einem Tut, wie man die Objekte bearbeitet
|
AW: Auf Objekt in der TObjectList zugreifen
Zitat:
![]() ![]() Obwohl die Doku da eigentlich genug Auskunft geben sollte. |
AW: Auf Objekt in der TObjectList zugreifen
Oh, das es zwei gibt wusste ich nicht :oops: Und danke für die Links zu Emba:thumb:, ich finde die meistens nicht bzw. ich sollte mir ein Lesezeichen setzen :stupid:
|
AW: Auf Objekt in der TObjectList zugreifen
![]() |
AW: Auf Objekt in der TObjectList zugreifen
Zitat:
Das magische Wort heißt docwiki und offenbart so ![]() |
AW: Auf Objekt in der TObjectList zugreifen
Da ich schon länge nichts mehr gecodet habe, hier eine Übung. Ich hoffe es ist richtig:
Delphi-Quellcode:
implementation
{$R *.dfm} uses Contnrs; type TInfo = class //Beispiel-Klasse DT: TDateTime; end; var Obj: TObjectList; procedure TForm1.FormCreate(Sender: TObject); begin Obj := TObjectList.Create; end; procedure TForm1.Button1Click(Sender: TObject); var Info: TInfo; p: Integer; begin Info := TInfo.Create; //Beispiel-Objekt Erstellen Info.DT := Now; p := Obj.Add(Info); //Beispielobjekt in ObjectList zuweisen if p > -1 then ShowMessage(Format('Aktuelle Zeit im Item %d als Objekt gespeichert.', [p])); end; procedure TForm1.Button2Click(Sender: TObject); var DT: TDateTime; Info: TInfo; p: Integer; begin if Obj.Count = 0 then Exit; p := Obj.Count - 1; Info := TInfo(Obj[p]); //Beispielobjekt aus ObjektList wieder auslesen DT := Info.DT; ShowMessage('Im Objekt gespeicherte Zeit: ' + TimeToStr(DT)); end; |
AW: Auf Objekt in der TObjectList zugreifen
Wie ist das eigentlich, wenn man noch nicht generisch unterwegs ist und immer Objekte der selben Klasse in die Objektliste packen möchte und einem das ganze rumgecaste stört?
Ich habe dazu einmal eine eigene Klasse erstellt, die selber intern eine Objektlist hatte und die nach außen hin die paar Methoden anbot, die ich benötigte (und die soweit gleich hießen, wie die der Objektliste) und habe in diesen Methoden dann das "rumcasten" erledigt. Wäre es da besser/sinnvoller gewesen stattdessen eine Klasse zu erstellen, die von TObjectlist erbt? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:21 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