2024年5月30日发(作者:)

VirtualTreeview使用说明

很好用的一个列表控件,可以用来代替Delphi自带的ListView和TreeView,而且也一直在更新,目前已经

支持最新的XE2

官方网站:

SVN地址:/svn/trunk

基本的使用方法就不多说了,可以看看Demo,或者百度一下还是有些教程的。我这里只记录一些属性方法

等,方便查阅

【属性】

EditDelay = 单元格编辑响应时间

HintAnimation = Hint动画效果

HintMode = Hint显示方式

LineMode = 网格线条模式

LineStyle = 网格线条样式

Header > AutoSizeIndex = 自适应宽度的列索引

Header > Options > hoAutoResize = 列自适应宽度开关

Header > Options > hoColumnResize = 是否可以自由调整列宽

Header > Options > hoDblClickResize = 双击分界线自动改变列度

Header > Options > hoDrag = 是否支持拖拽移动

Header > Options > hoHotTrack = 高亮显示当前列

Header > Options > hoHeightResize = 是否可以自由调整列高

TreeOptions > AutoOptions > toAutoExpand = 单击展开节点并收起其他节点

TreeOptions > AutoOptions > toAutoTristateTracking = 三态复选框自适应选择,即子节点被选择后父节点

Check状态改变

TreeOptions > MiscOptions > toCheckSupport = 是否显示复选框。还需要设置节点的CheckType属性

TreeOptions > MiscOptions > toEditable = 是否允许单击编辑单元格

TreeOptions > MiscOptions > toFullRepaintOnResize = 控件大小改变时刷新显示数据

TreeOptions > MiscOptions > toToggleOnDblClick = 双击展开节点

TreeOptions > PaintOptions > toHideSelection = 隐藏选择焦点

TreeOptions > PaintOptions > toHotTrack = 当前行是否显示下划线

TreeOptions > PaintOptions > toShowDropmark = 拖拽时是否显示插入标记

TreeOptions > PaintOptions > toShowRoot = 是否显示父节点展开按钮

TreeOptions > PaintOptions > toShowHorzGridLines = 水平网格线开关

TreeOptions > PaintOptions > toShowTreeLines = 父节点与子节点的连接线

TreeOptions > PaintOptions > toShowVertGridLines = 垂直网格线开关

TreeOptions > PaintOptions > toThemeAware = 应用系统主题

TreeOptions > PaintOptions > toAlwaysHideSelection = 总是隐藏选择

TreeOptions > PaintOptions > toChildrenAbove = 父节点处于子节点下方

TreeOptions > SelectionOptions > toDisableDrawSelection = 框选开关

TreeOptions > SelectionOptions > toExtendedFocus = 是否允许Cloumn>0的单元格有焦点(有焦点的时候才能

编辑)

TreeOptions > SelectionOptions > toFullRowSelect = 整行选择

TreeOptions > SelectionOptions > toMultiSelect = 是否可以多选

TreeOptions > SelectionOptions > toRightClickSelect = 右键是否可以选择

TreeOptions > SelectionOptions > toSimpleDrawSelection = 框选时只要该行处于框内即可被选择

TreeOptions > StringOptions > toShowStaticText = 是否显示静态文本(在节点正文后面显示的字符,静态文本

不能编辑)

【方法】

TopNode = 设置列表顶部的节点,可以用来定位节点行

ScrollIntoView = 设置滚动条位置,可以用来定位节点行

【事件】

OnChange = 焦点改变时

OnCreateEditor = 设置某单元格的编辑框样式,比如TEdit,TComboBox等等。需要自己实现IVTEditLink接

口,具体参看Advanced这个Demo

OnExpanded = 节点展开后触发

OnCollapsed = 节点收起后触发

OnPaintText = 设置单元内容字体效果,也可以画进度条等

OnHotChange = 热点节点改变时触发,也就是鼠标悬停时

单元格纵向位置及单元格高度

procedure 1InitNode(Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode;

var InitialStates: TVirtualNodeInitStates);

begin

Node := 20; //纵向位置

ight[Node] := 20; //单元格高度

end;

动态调整列宽度

procedure 1Resize(Sender: TObject);

begin

s[1].Width := - s[1].Left - 25;

end;