Obwohl es vielleicht eher akademischer Natur ist, gefallen mir die Ansaetze hier eher nicht. Wozu gibt es die Vererbung?
Also
TmyListbox = class(tlistbox)
// erweiterungen einbauen
Ggf. Als neue Komponente installieren und verwenden.
Cheers mschmidt
Das ist in diesem Zusammenhang eher kontraproduktiv.
Meine "Presenter" oder "Adapter" Klasse kann leicht auch auf andere visuelle Komponenten/Frameworks angepasst werden und über eine Factory kann ich diese verbinden. Dadurch kann ich der Factory z.B. ein TMemo, TListBox oder TComboBox (
VCL sowie FMX) übergeben und bekomme eine Instanz vom Typ der Basisklasse zurück.
Bei dieser Instanz ändere ich die Eigenschaft FileName und fertig ist.
Mit deinem Ansatz müsste ich immer die konkrete Ableitung der Komponente ansprechen (ja, auch möglich per
RTTI, aber schick ist das nicht).