Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Auf Objekt in der TObjectList zugreifen (https://www.delphipraxis.net/182893-auf-objekt-der-tobjectlist-zugreifen.html)

Luki206 24. Nov 2014 18:15

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:

TForm1 24. Nov 2014 18:18

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

Der schöne Günther 24. Nov 2014 18:31

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.

Luki206 24. Nov 2014 18:52

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

Sir Rufo 24. Nov 2014 18:59

AW: Auf Objekt in der TObjectList zugreifen
 
Zitat:

Zitat von Luki206 (Beitrag 1280939)
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

Dann frag das direkt und vor allem auf welche Delphi-Referenz durchsuchenSystem.Contnrs.TObjectList / Delphi-Referenz durchsuchenSystem.Generics.Collections.TObjectList bezieht sich deine Frage?
Obwohl die Doku da eigentlich genug Auskunft geben sollte.

Luki206 24. Nov 2014 19:10

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:

DeddyH 24. Nov 2014 19:22

AW: Auf Objekt in der TObjectList zugreifen
 
http://www.delphipraxis.net/dp_reference.php (da steht auch ein prima Tipp ;))

Sir Rufo 24. Nov 2014 20:29

AW: Auf Objekt in der TObjectList zugreifen
 
Zitat:

Zitat von Luki206 (Beitrag 1280941)
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:

Du möchtest mir/uns jetzt tatsächlich weis machen, dass du dir ein Wort nicht merken kannst?

Das magische Wort heißt docwiki und offenbart so Bei Google suchendocwiki TObjectList seine Magie. Ja, du hast Recht, das übersteigt natürlich die Fähigkeit eines Otto-Normal-Programmieres. :roll:

Popov 24. Nov 2014 21:41

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;

Jumpy 25. Nov 2014 10:34

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 03:51 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz