AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

VST löscht selektierten Knoten aus dem Baum

Ein Thema von TurboMagic · begonnen am 7. Feb 2025 · letzter Beitrag vom 10. Feb 2025
Antwort Antwort
Seite 1 von 2  1 2      
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.017 Beiträge
 
Delphi 12 Athens
 
#1

VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 15:30
Hallo,

ich hab' ein komisches Problem und werde einfach nicht schlau drauß.
TVirtualTreeView als Baum mit 2 Ebenen.

Jetzt hab' ich eine Methode die je nach Parameter entweder den allerersten Knoten
selektieren soll (Ebene 0) oder den ersten Unterknoten davon (der auf Ebene 1 ist).

Nur sobald ich das hier mache:

Delphi-Quellcode:
    Node := vst_ProductGroups.GetFirst(false);
    while Assigned(Node) do
    begin
      if MeineBedingung then // zu selektierender Knoten gefunden bedingung
      begin
        vst_ProductGroups.Selected[Node] := true;
        break;
      end;

      Node := vst_ProductGroups.GetNext(Node);
    end;
Wird der selektierte Knoten irgendwie aus dem Baum entfernt. Ist einfach weg.
Hat jemand eine Idee woran das liegen könnte?
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.579 Beiträge
 
Delphi 12 Athens
 
#2

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 15:45
Kannst du es an einem simplen Testprojekt nachstellen?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.017 Beiträge
 
Delphi 12 Athens
 
#3

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 15:58
Hallo,

vermutlich eher nicht (muss ich noch probieren), denn dieselbe
Methode wird auch direkt nach dem ersten Erzeugen des Bauminhaltes
aufgerufen und macht da keinen solchen Blödsinn.

Der Baum hat im Fehlerfall vor dem Aufrufen dieser Methode auch
wirklich den danach gelöschten Knoten drin.

Es wird nach der Methode eigentlich auch nichts anderes mehr aufgerufen.
Grüße
TurboMagic
  Mit Zitat antworten Zitat
AuronTLG
Online

Registriert seit: 2. Mai 2018
Ort: Marburg
309 Beiträge
 
Delphi 12 Athens
 
#4

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 16:07
Gibt es Ereignisse, die durch eine Selektion ausgelöst werden und dazu führen könnten? Select/Expand/Collapse-Ereignis oder sowas? Ich kenne die Komponente nicht, aber das wäre zumindest bei einer normalen Treeview mein erster Verdacht gewesen.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.579 Beiträge
 
Delphi 12 Athens
 
#5

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 16:33
vermutlich eher nicht (muss ich noch probieren)
Das ist aber eben auch alles, was wir hier probieren können. Wenn es damit nicht nachvollziehbar ist, dann können wir die Ursache ja gar nicht ermitteln, sondern sind auf blindes Raten angewiesen.

In vielen Fällen genügt es das Problem in einem Testprojekt nachzustellen und das damit erstmal nicht geht. Man erkennt dann nämlich sehr schnell, dass man an der falschen Stelle sucht.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.799 Beiträge
 
Delphi 12 Athens
 
#6

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 17:11
Vielleicht hilft es, wenn du OnBeforeItemErase, OnBeforeNodeFree oder OnFreeNode zuweist und darin einen Haltepunkt setzt. Wenn der Knoten regulär gelöscht wird, solltest du da landen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.017 Beiträge
 
Delphi 12 Athens
 
#7

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 7. Feb 2025, 20:38
Die Idee ist interessant. Schaue ich mir bald mal an.
Grüße
TurboMagic
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.017 Beiträge
 
Delphi 12 Athens
 
#8

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 9. Feb 2025, 11:48
Hallo,

zwei Erkenntnisse:

1. Das OnBeforeNodeFree Event gibt's bei mir irgendwie nicht aber die anderen beiden schon.
Hab da Logging reingehängt.

2. Habe jetzt herausgefunden, dass das VST am Ende der Drag'n Drop Operation meinen Code
ausführt, danach aber ein DeleteSelectedNodes des VST intern irgendwie aufruft.
Keine Ahnung warum das erst nach meinem Code kommt.
Jetzt erst mal Mittagspause. Mehr evtl. später...
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi
Online

Registriert seit: 17. Jul 2005
900 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 9. Feb 2025, 12:22
Wie sehen die Optionen des VST aus? Insbesondere das hier:

TreeOptions -> AutoOptions -> toAutoDeleteMovedNodes
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.017 Beiträge
 
Delphi 12 Athens
 
#10

AW: VST löscht selektierten Knoten aus dem Baum

  Alt 9. Feb 2025, 14:41
Du bist ein Genie! Genau das war die Ursache!
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 12:07 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