![]() |
Properties in TCollection von VirtualStringTree einfügen.
Hallo Delphi Profis,
ich möchte in ein TCollectionItem einige neue Properties einfügen, weiss aber nicht wie ich das anstellen soll. Ich habe mir eine von "TCustomVirtualStringTree" (Virtual String Tree von Mike Lischke) abgeleitete Komponente gebastelt. TCustomVirtualStringTree basiert auf der Klasse "TBaseVirtualTree", die TVTHeader (TPersistent) beinhaltet in der die Collection "TVirtualTreeColumns" drinnen ist. Etwa so:
Delphi-Quellcode:
Nun würde ich gerne die Items in TVirtualTreeColumns um ein paar Properies erweitern ohne den gesammten Source code vom Virtual String Tree ändern/übernehmen zu müssen.
TVirtualTreeColumns = class(TCollection);
TVTHeader = class(TPersistent) private FColumns: TVirtualTreeColumns; end; TBaseVirtualTree = class(TCustomControl) private FHeader: TVTHeader; end; TCustomVirtualStringTree = class(TBaseVirtualTree); TMyTree = class(TCustomVirtualStringTree); Also: liebe OOP Profis gibts da irgend eine Möglichkeit? Viele Grüsse, Cornelius |
Re: Properties in TCollection von VirtualStringTree einfügen
Wenn es jemanden interessiert, habs rausgefunden :-D
Man muss folgende functionen überschreiben, so das sie die eigene Headerklasse zurückgeben. So kann man den Tree dazu bringen eigene abgeleitete Header Klassen zu verwenden...
Delphi-Quellcode:
function GetHeaderClass: TVTHeaderClass; override;
function GetColumnClass: TVirtualTreeColumnClass; override; function TCaDBGrid3.GetHeaderClass: TVTHeaderClass; begin Result := TMyHeader; end; function TCaDBGrid3.GetColumnClass: TVirtualTreeColumnClass; begin Result := TMyTreeColumn; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz