Thema: Delphi Combobox mit tag

Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: Combobox mit tag

  Alt 30. Aug 2006, 18:06
Zitat von StTüff:
Mir ist klar, dass ich jedem Eintrag ein Objekt zuordnen kann.
Du könntest es einfach so machen:
Delphi-Quellcode:
  // Schreiben
  Strings.Objects[idx] := Pointer(Wert);
  // Auslesen
  Wert := Integer(Strings.Objects[idx]);
Das Problem bei deiner Idee ist, dass die ComboBox dir zwar ein TStrings-Interface gibt, intern aber eine eigene Implementierung dieser abstrakten Klasse verwendet. Die kannst du so einfach nicht erweitern. Komponenten, bei denen das vorgesehen ist, benutzen eine virtuelle Klassenfunktion zur Ermittlung der eigentlichen Klasse der nehmen ein Ereignis dafür (z.B. TTreeView.OnCreateNodeClass).

// NACHTRAG!!!

Habe gerade gesehen, dass das bei TComboBox sogar schon vorgesehen ist! Du musst dafür GetItemsClass überschreiben:
Delphi-Quellcode:
  protected
    // ...
    function GetItemsClass: TCustomComboBoxStringsClass; virtual; abstract;
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat