Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: TListbox füllen und abfragen

  Alt 10. Apr 2015, 10:16
Der richtige Weg geht eigentlich etwas anders.

Aus der Query erstellt man sich ein DatenObject. Dieses DatenObject ab in eine ObjectList. Von der ObjectList füllt man dann die ListBox. Den anzuzeigenden Text nimmt man sich aus der (überschriebenen) Methode TObject.ToString
Delphi-Quellcode:
procedure FillStrings( AStrings : TStrings; ADataList : TObjectList );
var
  LIdx : Integer;
begin
  AStrings.BeginUpdate;
  try
    AStrings.Clear;
    for LIdx := 0 to ADataList.Count - 1 do
    begin
      AStrings.AddObject( ADataList[LIdx].ToString, ADataList[LIdx] );
    end;
  finally
    AStrings.EndUpdate;
  end;
end;
Über das ausgewählte Item von so einem Listen-Control bekomme ich nun die Referenz, den Referenz-Typ und damit alle anderen zugehörigen Informationen.

Dadurch wird es egal, was für Objekte ich mit dem Listen-Control verknüpfen möchte - eben auch gemischt wie z.B. Personen, Firmen. Über den Referenz-Typ bekomme ich das heraus und kann damit verbundene Aktionen einleiten.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat