Einzelnen Beitrag anzeigen

günni0
(Gast)

n/a Beiträge
 
#20

AW: VirtualStringTree und Klasseninstanzen - Node Data finden

  Alt 17. Apr 2018, 11:11
Höre auf das, was Aviator sagt. Er ist sehr erfahren mit dem VST. Ich höre auf euch beide

Eine Sache habe ich eben noch hinzugefügt

aus
Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
begin
 VST.Clear;
 DeleteNode(2); // Daten anhand des Index löschen. 2 ist nicht der absolute Index sondern der, der in Button1Click gesetzt wird
 VST.RootNodeCount := aVSTDataClasses.Count;
end;
wird

Delphi-Quellcode:
procedure DeleteUserNode(iIndex: Integer);
begin
 if iIndex > aVSTDataClasses.Count - 1 then // ---------------- neu
  Exit;

 VST.Clear;
 aVSTDataClasses.Delete(iIndex);
 VST.RootNodeCount := aVSTDataClasses.Count; // re-draws alle nodes of VST
end;

procedure TForm2.Button2Click(Sender: TObject);
begin
 DeleteNode(2);
end;
Zitat:
Alternativ zum RootNodeCount und OnInitNode-Eventhandler kannst du natürlich auch versuchen mit AddChild zu arbeiten.
Zitat:
Bloß nicht.
Habe es eben dennoch mal ausprobiert.
Mein erstes Erlebnis waren Nodes die nicht richtig gezeichnet wurden, wenn man das AfterItemPaint-Event nutzt. Aber das war nur minimal und nicht weiter schlimm und auch sofort wieder weg, sobald man mit der Maus über den Node gefahren ist.

Geändert von günni0 (17. Apr 2018 um 11:14 Uhr)
  Mit Zitat antworten Zitat