Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TTreeNode um eine weitere Variable erweitern (https://www.delphipraxis.net/50166-ttreenode-um-eine-weitere-variable-erweitern.html)

Nogge 21. Jul 2005 12:06


TTreeNode um eine weitere Variable erweitern
 
Hallo Community,
Ich möchte gern die class TTreeNode so um eine Variable erweitern, dass ich den erweiterten Typ immer noch der Standard-TreeView hinzufügen kann. Bisherige Versuche haben immer nur einen "Inkompatibelitätsfehler" verursacht ;_;
Delphi-Quellcode:
type
  TTreeNode = class(ComCtrls.TTreeNode)
  private
    { Private declarations }
    ShouldExpand : Boolean;
  end;

barf00s 21. Jul 2005 12:10

Re: TTreeNode um eine weitere Wariable erweitern
 
nicht umsonst hat TTreeNode ein .Data Feld :)

Nogge 21. Jul 2005 12:16

Re: TTreeNode um eine weitere Wariable erweitern
 
Diese Variable habe ich bereits in Benutzung (Hätte ich vllt schon vorher sagen sollen^^)

barf00s 21. Jul 2005 12:19

Re: TTreeNode um eine weitere Wariable erweitern
 
dann kann man dem TReeView vllt verkliggern aus welcher klasse seine Nodes bestehen .SetNodeClass oder so - keine ahnung

ich bin VirtualTreeView nutzer :)

Nogge 21. Jul 2005 12:25

Re: TTreeNode um eine weitere Wariable erweitern
 
Wieso schreibste ne "Antwort", wenn du keine Ahnung hast?^^

Flocke 21. Jul 2005 12:25

Re: TTreeNode um eine weitere Wariable erweitern
 
Du musst TTreeView.OnCreateNodeClass setzen und darin deine TTreeNodeSubclass als Klasse zurückgeben.

Noch was:
Delphi-Quellcode:
TTreeNode = class(ComCtrls.TTreeNode)
  private
    { Private declarations }
    ShouldExpand : Boolean;
  end;
So solltest du es nicht machen, denke dir einen neuen Namen aus.

barf00s 21. Jul 2005 12:26

Re: TTreeNode um eine weitere Wariable erweitern
 
weil unter umständen vllt DOCH was dabei iss - oder dich zum denken anregt

Nogge 21. Jul 2005 12:29

Re: TTreeNode um eine weitere Variable erweitern
 
Könntest du mir deine Antwort als Source Code liefern, Flocke? Ich kann viel besser Code als Worte verstehen^^

Flocke 21. Jul 2005 12:50

Re: TTreeNode um eine weitere Variable erweitern
 
Aus dem Kopf ...
Delphi-Quellcode:
type
  TMeinTreeNode = class(TTreeNode)
  // was immer du ändern willst
  end;
dann im OI für das TTreeView-Control die Ereignisse ansehen und auf OnCreateNodeClass doppelt klicken und dann ergänzen:
Delphi-Quellcode:
procedure TForm.TreeView1CreateNodeClass(Sender: TCustomTreeView;
  var NodeClass: TTreeNodeClass);
begin
  NodeClass = TMeinTreeNode;
end;

Nogge 21. Jul 2005 15:03

Re: TTreeNode um eine weitere Variable erweitern
 
(Habe gerade gemerkt, dass ich für dieses Thema schon mal einen Thread erstellt hatte o_O)
Trotzdem viele Dank, Flocke!
[edit]
Ich muss nur noch zusätzlich vor jedem Ausgabewert einer Function dies schreiben:
Delphi-Quellcode:
Root:=TTreeNodeEx(TreeView1.Items.Add(nil,'Root1'));
[/edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:07 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz