Autor Beitrag
LuMa86
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 76



BeitragVerfasst: Fr 14.11.14 00:33 
Hallo,
hört sich einfach an, ist aber doch garnicht so einfach ;) Vorneweg: Es handelt sich um ein FMX Treeview, ich habe es allerdings bewusst nicht im Firemonkey-Forum gepostet.

So nun zu meinem Problem. Ich habe ein FMX TreeView, was ich zur Laufzeit fülle. Wenn ein Item angeklickt wird möchte ich, je nach "Ebene" des angeklickten Items, bestimmte Daten anzeigen. Ich weiß das es 4 "Ebenen" gibt, sieht etwas so aus:

Haus (Ebene 1)
---- > Zimmer (Ebene 2)
-------- > Schränke (Ebene 3)
------------ > Inhalt (Ebene 4)

Ich hoffe man versteht was ich meine :P So. Jetzt möchte ich, wenn ich Ebene 4 anklicke, wissen, was die ÜberEbenen (bzw. deren Texte) sind. Sprich, wenn ich wie in meinem Beispiel Ebene 3, also das Item mit den Text "Schränke" anklicke, will ich dann "Zimmer" und "Haus" ermitteln. Mit den Werten die ich erhalte würde ich gerne weiterarbeiten.

Leider konnte ich das Problem bis jetzt noch nicht lösen, deshalb zähle ich auf euch :)

Gruß,
LuMa.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19274
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 14.11.14 11:42 
Also prinzipiell hört sich das nach dem typischen Problem an, dass du Daten mit Darstellung zu sehr verbandelt hast. Eigentlich solltest du diese Informationen aus den dahinterliegenden Daten bekommen und nicht in der TreeView suchen müssen.

Aber wie wäre es mit ParentItem? Zum Beispiel der Elternknoten des markierten Knotens:
ausblenden Delphi-Quelltext
1:
MyTreeView.Selected.ParentItem					

Für diesen Beitrag haben gedankt: LuMa86
LuMa86 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 76



BeitragVerfasst: Fr 14.11.14 13:14 
Ich lese die Daten aus einer DB mit einem Table. Der Inhalt eines Datensatzes soll eben in dieser Baumstruktur dargestellt werden. Diese 4 Ebenen bilden den Index/Primary Key meiner DB. Wenn ich also auf Ebene 4 (Inhalt) klicke, möchte ich die Parents ermitteln um dann nach dem passenden Datensatz in der DB zu suchen (Das wäre dann Haus|Zimmer|Schrank|Inhalt) und mir die Daten anzeigen zu lassen. Klickt man hingegn auf Ebene 3 (Schränke), ermittel ich die Parents Zimmer und Haus umd dann alle Datensätze mit Haus|Zimmer|Schränke zu suchen und die verschiedenen Inhalte aufzulisten.
Ist etwas kompliziert formuliert, aber ich hoffe es wird klar was ich erreichen will. Das die Struktur der DB völliger Müll ist, das ist mir bewusst, nur leider habe ich keinen Einfluss auf den Inhalt und die Struktur der DB, ich muss es lediglich auslese und schön darstellen.

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Aber wie wäre es mit ParentItem? Zum Beispiel der Elternknoten des markierten Knotens:
ausblenden Delphi-Quelltext
1:
MyTreeView.Selected.ParentItem					


Danke, da bin ich nicht drauf gekommen, das hilft mir weiter :)