Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi VirtualTree - Selectionverhalten (https://www.delphipraxis.net/93844-virtualtree-selectionverhalten.html)

newgro 12. Jun 2007 09:56


VirtualTree - Selectionverhalten
 
Hallo *,

ich habe ein etwas merkwürdiges ( :twisted: ) Verhalten in meinem Tree.

1.)
- A
|- A1 <--- Mausklick - selektiert
|- A2
+ B
- C
|- C1
|- C2

2.)
+ A <--- Mausklick auf das [-] - geschlossen
+ B
- C
|- C1
|- C2

3.)
- A <--- automatisch geöffnet (NICHT gewünscht)
|- A1
|- A2
+ B
- C
|- C1 <--- Mausklick - selektiert
|- C2

Gibt es vielleicht eine Eigenschaft im Tree, mit der ich das Ausschalten kann?
Danke
Per

CCRDude 12. Jun 2007 10:02

Re: VirtualTree - Selectionverhalten
 
Vielleicht solltest Du noch beschreiben, was zu Punkt 3 führt. Oder meinst Du, daß geschlossene Nodes wirklich vollautomatisch ohne jegliche Userinteraktion wieder aufgehen?
Hast Du irgendwo im Code vielleicht ein FullExpand?

newgro 12. Jun 2007 10:11

Re: VirtualTree - Selectionverhalten
 
Habe gesucht - im Code steht kein FullExpand.

In 1.) A1 hat Focus und ist selektiert
dann A schließen (klick auf das [-] vor A)
In 2.) A ist geschlossen, hat keinen Fokus und ist nicht selektiert
dann C1 anklicken
In 3.) C1 ist selektiert und hat Fokus UND A ist wieder geöffnet, hat keinen Fokus und ist nicht selektiert
Es sollte aber sein
In 3 richtig.) C1 ist selektiert und hat Fokus UND A ist geschlossen, hat keinen Fokus und ist nicht selektiert

Das Problem ist einfach, das er beim FocusLost den bereits geschlossenen Knoten (A) wieder öffnet.
Damit "springt" der in Aktion 3.) selektierte Knoten umher. Das ist etwas verwirrend (um nicht zu sagen
nervig :-) )
Die Useraktion ist der Klick auf den C1-Knoten. Dieser Eintrag bekommt also den Focus.

Hoffe das erklärt es etwas besser.
Cheers
Per

newgro 18. Jun 2007 07:57

Re: VirtualTree - Selectionverhalten
 
Weiss niemand einen Rat?

Cheers
Per

marabu 18. Jun 2007 08:31

Re: VirtualTree - Selectionverhalten
 
Hallo Per,

nimm ein leeres Projekt, ziehe eine TreeView darauf und trage deine Beispieldaten über den TreeView-Eintragseditor ein. Lasse jeden Code weg und starte das Programm. Wenn das von dir beobachtete Verhalten dann immer noch auftritt, dann stelle das Projekt als Quellcode zur Begutachtung hier ein. Wenn nicht, dann ist es der Code in deinem anderen Projekt, der das Verhalten produziert.

Grüße vom marabu

newgro 18. Jun 2007 11:46

Re: VirtualTree - Selectionverhalten
 
Gute Idee. Habe es so gefunden. Die Option - Verschiedene / TreeOptions / AutoOptions / toAutoFreeOnCollapse - muss auf True stehen.

Danke für die Hilfe
Per


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:26 Uhr.

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