![]() |
Virtual Treeview und Datenbank
Ich habe folgendes Problem mit der Virtual Treeview Komponente von
Mike Lischke: Ich mochte einen Baum aufbauen, dessen Daten aus einer Datenbank kommen, die folgenden Aufbau hat: Ich habe eine Tabelle Gebäude mit Gebäudedaten Weiterhin habe ich eine Tabelle mit Raumdaten die einen Frendschlüssel auf die Gebäudedaten hat. Der Baum soll jetzt so aussehen Infrastruktur <- nur ein Titel auf Level 0 + Gebäude 1 <- Gebäudedaten auf Level 1 - Raum <- zugehörige Raumdaten in Abhängigkeit vom Gebäude - Raum + Gebäude 2 Ich habe mich schon überall umgesehen, aber ich komme mit den bisherigen Informationen nicht wirklich weiter. Wer kann helfen ? |
Re: Virtual Treeview und Datenbank
Zitat:
Ich denke, dass sich die Informationen von "Gebäude" von denen eines "Raums" unterscheiden - wie willst Du diese darstellen? Beispiel des Treeviews:
Delphi-Quellcode:
Verstehst Du, was ich meine?
Name Strasse Eigentümer Raumnr
============================================================ Infrastruktur 1 Gebäude 1 Gebäudestrasse 1 Eigentümer 1 ??? +- Raum1 ???? ????? 100 Gruß Igotcha |
Re: Virtual Treeview und Datenbank
Soweit mir bekannt ist, kann ich zu jedem Node eine Datenstruktur ablegen.
Die Definition der Dataenstuktuen lautet wie folgt: PGeb = ^TGeb; TTGeb = packed record Geb_id : integer; Geb_bez : string[80]; end; PRaum = ^TRaum; TRaum = packed record Raum_ID : integer; Geb_ID : integer; Raum_Bez : string[40]; Groesse : integer; end; Ich möchte also, sobald ich den Rooteintrag öffne die Daten aus der Tabelle "Gebäude anzeigen". Wenn ich dann den entsprechenden Knoten Gebäude öffne, sollen alle Daten aus der gefilterten Tabelle Raum angezeigt werden, wobei die Informationen, die angezeigt werden nur die Bezeichnungen sind. |
Re: Virtual Treeview und Datenbank
Welche Datenbank nutz du? Vielleicht kann man das abarbeiten auf die DB abschieben.
|
Re: Virtual Treeview und Datenbank
Zitat:
Wenn man mal die Baumstruktur einen Moment außen vor läßt, bleibt die reine Tabellensicht übrig. Jetzt schau Dir mal Deine Datenstrukturen an. Wie möchtest Du diese denn in einer Tabelle darstellen? Wenn überhaupt, dann geht das nur so, sieht aber optisch schlecht aus:
Delphi-Quellcode:
Da wo ich "NULL" hingeschrieben habe, hast Du für einen Eintrag keine Werte und die Darstellung ist somit einfach unübersichtlich und eigentlich nicht das, wofür der VTV gedacht ist.
Name GEB_ID GEB_BEZ RAUM_ID GEB_ID RAUM_BEZ GROESSE
==================================================================== Gebäude 1 Geb1 NULL NULL NULL NULL +-Raum NULL NULL 100 1 Raum1 100 Schau Dir mal das hier an: Das ist ein Screenshot von einem Programm von mir und da siehst Du, dass in der "Tabelle" grundsätzlich die gleichen Daten verwendet werden, eben nur hierarchisch dargestellt ![]() Gruß Igotcha |
Re: Virtual Treeview und Datenbank
Also noch mal zum Verständnis.
Die Virtual Treeview als Baumdarstellung soll nur eine hierachische Sicht auf die Datenbank geben und damit sozusagen als Navigation durch die unterschiedlichen Tabellen dienen. In einer zweiten Virtual Treeview möchte ich dann die Detailinformationen anzeigen, ähnlich dem Windows Explorer bzw auf Mausckick öffnet sich ein neues Fenster mit den entsprechenden Detailinformationen. Die Baumstruktur soll nicht als Kombination von Baum- und Listansicht dienen. Ich hoffe ich konnte mein Problem deutlich genug formulieren. Ich arbeite mit D7 Pro und Firebird 1.5. Gruß Frank |
Re: Virtual Treeview und Datenbank
|
Re: Virtual Treeview und Datenbank
Hallo,
hatte die gleiche Herausforderung. Schau mal meine Lösung an (bin Delphi-Anfänger, geht bestimmt noch eleganter), funktioniert bei mir Tadellose. ![]() Tom |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 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