AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Erweiterte TreeNodes in TreeView-Komponente einfügen?
Thema durchsuchen
Ansicht
Themen-Optionen

Erweiterte TreeNodes in TreeView-Komponente einfügen?

Ein Thema von mjenke · begonnen am 6. Apr 2006 · letzter Beitrag vom 6. Apr 2006
 
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#1

Erweiterte TreeNodes in TreeView-Komponente einfügen?

  Alt 6. Apr 2006, 07:39
Guten Morgen, alle miteinander!


Ich habe gestern versucht, eine eigene TreeNode-Klasse in einer TreeView-Komponente zu nutzen, bin dabei aber auf Probleme gestoßen.

Nehmen wir einmal an, ich hätte meine TreeNode-Klasse folgendermaßen aufgebaut:

Delphi-Quellcode:
type

[...]

TTreeNodeErw = class ( TTreeNode )
  private
    FID: Integer;
  public
    constructor Create ( AOwner: TTreeNodes; ID: Integer );
    property ID: Integer read FID write FID;
end;

[...]

implementation

[...]

{ TTreeNodeErw }

constructor TTreeNodeErw.Create ( AOwner: TTreeNodes; ID: Integer );
begin
  inherited Create ( AOwner );
  FID := ID;
end;
(Ist jetzt aus dem Kopf geschrieben, also nicht zu ernst nehmen).

Sinn ist es in diesem speziellen Fall, in meiner TreeView-Komponente direkt eine Baumansicht von Datenbankeinträgen zu erzeugen, die eben über die ID (FID) eindeutig angesprochen werden können. Das Modell wäre selbstverständlich erweiterbar, so dass man noch mehr Informationen direkt in den Node mit hineinpackt.

Ich kann einen TreeNode dieser Klasse auch direkt in eine TreeView-Komponente einfügen:

TreeView.Items.Add ( TTreeNodeErw.Create ( TreeView.Items, 1 ), 'Knoten 1' ); Das funktioniert. Aber wenn ich den Knoten anwähle, um mir beispielsweise die ID anzeigen zu lassen:

ShowMessage ( IntToStr ( TTreeNodeErw ( TreeView.Selected ).ID ) ); wird mir ein Zufallswert angezeigt, der irgendwo im System herumfliegt. Der TreeView scheint also wirklich nur den TTreeNode-Teil meiner TTreeNodeErw-Klasse zu verwalten. Der Rest scheint verloren zu gehen.

Jetzt meine eigentliche Frage:

Kennt jemand eine Möglichkeit, eine solche erweiterte TTreeNode-Klasse direkt in einem TTreeView zu benutzen, ohne dass man auch diesen (und damit auch die TTreeNodes-Klasse und alles, was damit zusammenhängt), ebenfalls anpacken und erweitern zu müssen?




Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 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 by Thomas Breitkreuz