如何从TVirtualStringTree中删除所有节点?

use*_*132 3 delphi virtualtreeview delphi-xe tvirtualstringtree

如何在事件处理程序中删除所有节点,包括VirtualStringTree后代,关闭包含VirtualStringTree的表单?

TLa*_*ama 5

要删除a TVirtualStringTree或其后代中的所有节点,请使用该Clear方法(但请注意该Clear方法是虚拟的,并且可以被某些后代覆盖.但是,实现者应该保留此方法的原始目的,即清除树.如果不是,那么在我看来这只是一个错误的实现:

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  VirtualStringTree1.Clear;
end;
Run Code Online (Sandbox Code Playgroud)