Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Generics-Typparameter einer TObjectlist herausfinden

  Alt 18. Mär 2012, 11:22
Um es Kurz zu machen.
Das brauchst du nicht rausbekommen, da die Generics ein großes Problem mit der Vererbung haben.

TObjectList<T> ist erstmal kein Nachfahre von TObjectList.
Diese Klassen sind nicht kompatibel zueinander, weder TObjectList<T> mit TObjectList, noch TObjectList<Ta> mit TObjectList<Tb>.

Da du diese also nicht über eine Schnittstelle auslesen kannst, gibt es auch fast keinen wirklichen Grund den Typ rauszubekommen, da man von dem generischen Typen nicht sicher feststellen kann, ob das überhault eine TObjectList<> ist.


Ansonsten gab es vor wenigen Jahren schonmal eine Frage dazu Hier im Forum suchenTyp eines Generics auslesen.
Du wirst dich also mühevoll durch die RTTI quälen.
Einfach ist es, wenn du

Delphi-Quellcode:
var
  L: TObjectList<TEdit>;
begin
  T = TypeInfo(L.Items[i]);
$2B or not $2B

Geändert von himitsu (18. Mär 2012 um 11:27 Uhr)
  Mit Zitat antworten Zitat