FoxTreeView
<p>FoxTreeView,FoxUI提供的树状浏览容器组件
<strong>属性</strong>
Alpha 透明度</p>
<p>ButtonRight 展开按钮是否在右边显示</p>
<p>CaptionEdit 标题是否可以编辑</p>
<p>HorzScrollBar 横向滚动条</p>
<p>HotTrack 是否对鼠标经过进行反映</p>
<p>ImageList 图标列表 对接 <a href="https://www.showdoc.cc/p/ff039e66f52948a431eb58f823029a54" title="FoxUIBmp32List">FoxUIBmp32List</a></p>
<p>ItemHeight 默认项高度</p>
<p>MarginSet 间距管理
CheckBox 勾选框间距
ImgList 图标间距
Btn 按钮间距
Item 项间距
Txt 文字间距</p>
<p>MultiSelect 是否支持多选</p>
<p>MsSiblingOnly 多选的时候是否只针对同一级节点</p>
<p>MsItemVisOnly 勾选框同步是否计算不可见项</p>
<p>PopupMenu 右键菜单 对接 <a href="https://www.showdoc.cc/p/94e26e335005d1b7eb076bf28ccc13f0" title="FoxPopupMenu">FoxPopupMenu</a></p>
<p>RightSelect 是否支持右键选中项</p>
<p>RoundValue 圆角设置</p>
<p>PageMode 分页显示模式</p>
<p>ShowButton 是否显示收缩展开按钮</p>
<p>ShowLine 是否显示节点虚线</p>
<p>ShowCheckBox 是否显示勾选框</p>
<p>ShowItemHint 是否自动显示项的文字提示 包括超长文字自动提示</p>
<p>SkinSet 皮肤管理
Back 背景图皮肤序号
BtnExpand 按钮皮肤序号
Check 勾选框皮肤序号
Item 项皮肤序号</p>
<p>VertScrollBar 竖向滚动条</p>
<p>Transparent 背景透明</p>
<p><strong>提供的事件</strong>
OnAfterDraw(Sender: TObject; DstBmp: TBitmap32;Arect: TRect);</p>
<p>OnBeforeDraw(Sender: TObject; DstBmp: TBitmap32;Arect: TRect);
内部绘制前后事件</p>
<p>OnBorderSelect 边框颜色输出事件</p>
<p>OnAfterBackDraw 背景绘制后触发</p>
<p>OnItemAfterDraw,OnItemBeforeDraw 项绘制前后触发</p>
<p>OnItemFontSelect(Sender: TObject; AFont: TFont);
文字输出时候触发 方便动态修改字体</p>
<p>OnItemColorSelect 颜色输出的时候触发</p>
<p>OnItemGetImgIndex 图标输出的时候触发</p>
<p>OnItemGetCaption 获取项名称内容</p>
<p>OnItemEditInit 项编辑器初始化事件 我们可以对edit进行配置</p>
<p>OnItemAllowEdit 项编辑触发,我们可以禁止编辑</p>
<p>OnItemAllowExpand 项是否可以展开事件</p>
<p>OnItemAllowCheck 项是否可以勾选事件</p>
<p>OnItemParentAllowCheck 父节点是否可以勾选事件</p>
<p>OnItemAllowSelect 项是否可以选中事件</p>
<p>OnItemAllowSelectChange 项是否可以切换选中 注意此事件仅仅在单选下生效</p>
<p><del>OnItemCaptionEdit 当标题编辑变化的时候触发 我们可以阻止和动态修改内容</del> 统一到OnItemRenameCaption事件</p>
<p>OnItemCheckChange 当项勾选变化的时候触发</p>
<p>OnItemCheck 项勾选触发</p>
<p>OnItemClick 项点击触发</p>
<p>OnItemEnter 鼠标进入项触发</p>
<p>OnItemLeave 鼠标离开项触发</p>
<p>OnItemExpand 项展开的时候触发</p>
<p>OnItemLeftDraw 此事件里可以动态修改左边起点</p>
<p>OnItemRenameCaption 当标题修改的时候触发</p>
<p>OnItemSelectChange 当项选中状态变化的时候触发</p>
<p>OnItemDataDelete 如果有项的绑定数据在这个事件里可以释放</p>
<p>OnItemDbClick 项双击</p>
<p>OnItemMouseOver,OnItemMouseDown,OnItemMouseUp 项的鼠标事件,如果我们有自绘的对象,适合在这几个事件里进行判断联动。</p>
<p>OnItemOwnerDraw 项自定义绘制</p>
<p>OnItemMeasure 项动态修改尺寸</p>
<p>OnItemShowCheckBox 我们可以指认让项是否显示勾选框</p>
<p>OnPageGetItemCount 分页模式下每页动态设置显示项目个数事件</p>
<p>OnPageItemNewRow 分页图标模式下是否动态换行事件</p>
<p>OnPageInfo 分页模式下完全自定义每页显示索引</p>
<p>OnScroll 滚动条滚动事件</p>
<p>OnHorzScrollGetAlpha 横向滚动条动态设定透明</p>
<p>OnvertScrollGetAlpha 竖向滚动条动态设定透明</p>
<p><strong>提供的方法</strong>
Procedure Clear;//清除所有项
procedure SortItemList(Compare: TListSortCompare);//对列表项排序
procedure CheckSelState;//检查所有选中状态
procedure SetAllChildChecked(Root:TFoxTVItem;ischeck:Boolean); //设置所有被选中
procedure InvalidateItem(Aitem:TFoxTVItem);//区域更新个项
Procedure ExpandItem(Rootitem:TFoxTVItem;IsExpand:Boolean;includeChild:Boolean);//展开或收缩
Function AddItem:TFoxTvItem;overload;//加入item
Procedure Additem(item:TFoxTVItem);overload;
Procedure InsertItem(ParentItem:TFoxTVItem;item:TFoxTVItem;index:integer);//插入
Procedure DeleteItem(Aitem:TFoxTvItem);//删除一个项
Function GetPrvVisItem(AItem:TFoxTVItem):TFoxTVItem;//获取前面一个可见的项 Function GetNextVisItem(AItem:TFoxTvItem):TFoxTVItem;//获取下面一个可见的项
Procedure DeleteSelected;//删除所有选中
Procedure DoCancelAllSelected;//取消所有选中
Procedure DoCancelAllChecked;//取消所有勾选
procedure MakeItemVisible(Aitem:TFoxTVItem;Ani:Boolean=true);//让某一项选中可见
Procedure ActiveItemHint(hintStr:string;Pt:Tpoint); //显示项目提示
procedure CloseItemHint;//关闭项目提示
procedure MoveItem(SrcItem,DestItem:TFoxTVItem);//移动项目
function GetFirstLevel(ALevel:Integer):TFoxTVItem;//返回对应级的第一个item
function GetNextLevel(Aitem:TFoxTVItem;ALevel:Integer):TFoxTVItem;//获取对应级别的下一个同级item
function ItemAtPos(pt:TPoint):TFoxTvItem;//光标获取到的item
function SaveToFile(FileName:String):Boolean;//把结构保持成json文件
function SaveToSteam(Stream:TStream):Boolean;//保存json到流
function LoadFromFile(FileName:String):boolean;//从json文件里载入结构
function LoadFromStream(Stream:TStream):Boolean;//从json流载入
procedure DisplayNextItem;//显示下一个item
procedure DisplayPrvItem;//显示前一个item</p>