Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

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

AW: ComboBox mit mehreren Spalten?

  Alt 15. Dez 2014, 21:44
Ja, da hast etwas völlig falsch verstanden.

Diese "tolle" Lösung (mehr ein Gewurschtel oder auch Krücke) misbraucht den Objekt-Parameter um einen Integer Wert dort abzulegen. Das funktioniert irgendwie, ist aber nicht der Sack der Zwerge.

Wenn du eine Information dort ablegen willst, dann lege dort auch eine Information ab.

Nehmen wir an, dort soll eine Person abgelegt werden mit einem string ID Wert, dann mach das dich richtig:
Delphi-Quellcode:
TPerson = class
public
  constructor Create( const ID, FirstName, LastName : string );
  function ToString : string; override;
  property ID : string read FID;
  property FirstName : string read FFirstName;
  property LastName : string read FLastName;
end;

function TPerson.ToString: string;
begin
  Result := FLastName + ', ' + FFirstName;
end;
Aus der Abfrage erzeugst du dir die Instanzen und fügst diese dann zu den ComboBox Items hinzu
Delphi-Quellcode:
LPerson := TPerson.Create( ... );
ComboBox.Items.AddObject( LPerson.ToString, LPerson );
Du musst jetzt nur wegen der Freigabe schauen, ob die ComboBox Items das OwnsObjects unterstützen.
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