Einzelnen Beitrag anzeigen

mytbo

Registriert seit: 8. Jan 2007
461 Beiträge
 
#2

AW: In VirtualStringTree nach Neuladen zurück auf vorigen Node

  Alt 29. Okt 2020, 16:31
[*]In OnEdited werden Daten in DB geschrieben und Daten neu in VST geladen. U.U. liegt editierter Satz jetzt in anderer Reihenfolge
Für mich stellt sich die Frage, warum du die Daten neu laden willst? Hier würde ein einfaches InvalidateNode(Node) zur Aktualisierung der Anzeigen eigentlich reichen.

Ich mache es allgemein so:
Delphi-Quellcode:
focusedItemOID := GetLVFocusedItemOID(vlvList);
vlvList.BeginUpdate;
try
  // Daten aktualisieren
finally
  vlvList.EndUpdate;
end;
SetLVFocusByItemOID(vlvList, focusedItemOID);
In der Prozedure SetLVFocusByItemOID() steht dann am Ende in etwa folgendes:
Delphi-Quellcode:
vlvList.ClearSelection;
vlvList.FocusedNode := Node;
vlvList.Selected[Node] := True;
Anmerkung: Ich setzte den VST schon sehr lange ein. Weil er in eigenen Frameworks eingebunden ist, auch nicht die aktuellste Version.

Bis bald...
Thomas
  Mit Zitat antworten Zitat