TVirtualStringTree,树结构的位置

时间:2019-03-03 19:25:41

标签: delphi tvirtualstringtree

VirtualStringTree的可视树结构始终停留在第一列(索引为0的那一列)。当您通过拖动列标题来更改列顺序时,树可能看起来很奇怪(下图)。是否有可能总是在第一个可见列中看到该结构? Test

1 个答案:

答案 0 :(得分:4)

基于TVirtualStringTree.Header.MainColumn显示结构,每次移动列时都需要更改,因为移动列并不会更改其索引,而是会TVirtualTreeColumn.Position属性。最简单的方法是使用OnHeaderDragged

procedure HeaderDragged(Sender: TVTHeader; Column: TColumnIndex; OldPosition: Integer);
begin
  MyTree.Header.MainColumn := MyTree.Header.Columns.ColumnFromPosition(0);
end;