DevExpress VCL 的 cxDBTreeList 的使用方法
DevExpress VCL 的 cxDBTreeList 的使用方法:(假设控件名为: WBSTree)
1、控件WBSTree 通过绑定 DataSet 获取数据记录(Nodes),通过 Columns 绑定到 DataSet 的域(Field);
1)通过For循环:0 to WBSTree.ColumnCount -1,WBSTree.Columns[integer] (TcxTreeListColumn) 获取的列记录顺序,参考下图。 下列图中有三个 Band(0,1,2),且各列(Column)分别交叉属于不同Band。
2)也可以通过 :WBSTree.ColumnByName(‘NameString’) ,提供列名称字符获取列(TcxTreeListColumn);
3)TcxTreeListColumn 的 ItemIndex 属性(Integer)返回的整数值,即是下图中列的顺序值。因此要取某列(名称标识)在 Columns 中 顺序码 Index,通过下列方法: WBSTree.ColumnByName(‘WBSTreeId’).ItemIndex . 获取 ‘WBSTreeId’列的顺序码,值绝对是 0,排第一位。

2、要获取列 Column 在 Band 中位置,有一个参数 Position 与 VisibleIndex。WBSTree.ColumnByName(‘WBSTreeId’). Position/VisibleIndex
Position 对象(类TcxTreeListColumnPosition)有几个属性:BandIndex,ColIndexandRowIndex,LineCount,可见性(VisibleBandIndex,VisibleColIndex,VisibleRowIndex). 及 相应的 (Band,Column, andRow).
WBSTree.ColumnByName(‘WBSTreeId’). Position.Band 获取所在Band (TcxTreeListBand);
3、通过 Tree控件的 WBSTree.FocusedNode 或者 Selections[ Index: Integer ] (SelectionCount 是选中的数量) 获得某行节点(TcxDBTreeListNode ) ;
Node记录 ,它 data cells 通过 Values[ Integer ] 来获取相应列 Columns 的值,两者 Index 一致 ;节点的字符串值 通过 Texts 或者 DisplayTexts。
树的”根Root节点“ 通过 WBSTree.Items 获得; 每个节点(并不限于根节点) 通过 HasChildren 判断是否有下级节点,并通过 Items 获得下级节点。
4、节点 的 checked state ,首先设置TcxTreeList 的 OptionsView.CheckGroups 为True ,再通过 WBSTree.AbsoluteCount 对所有节点 进行设置 Check 的类型: WBSTree.AbsoluteItems[I].CheckGroupType := ncgCheckGroup; 也可以是 单选 Radio 型。
根节点需要单设 :WBSTree.Root.CheckGroupType := ncgCheckGroup;
节点有一属性代表 选择状态:CheckState (类:TcxCheckBoxState)有三个枚举值:cbsUnchecked,cbsChecked,cbsGrayed;
节点还有一个 Boolean属性: Checked ,只能有两个值。
节点的 Enabled 属性,决定用户能否改变选择状态。
节点还有一个属性 AllowGrayed ,决定其能否有三个状态,即能有 :cbsGrayed 的状态值。
5、是通过 树组件的 节点的 Selections[ Index: Integer ] 或者 通过 节点的 Checked 或者 CheckState 选择节点 ,以便 进行导入 或者输出 ?
Selections 方便; Checked / CheckState 需要 迭代父子关系。 ===== 细节另行细述!
DevExpress VCL 的 cxDBTreeList 的使用方法的更多相关文章
- DevExpress VCL Controls 2019发展路线图(No.2)
[DevExpress VCL Controls下载] ExpressQuantumTreeList Excel-inspired Filter (v19.1) 与ExpressQuantumGrid ...
- DevExpress VCL 已死-----关于13.1.4的发布。
随着DevExpress VCL 13.1.4 的发布,已基本上宣布了devexpress vcl 已经死亡了. 除了一些bug 修正,没有什么新的东西,每年的订阅费又那么贵,而且delphi 现在已 ...
- Devexpress VCL Build v2013 vol 13.2.2 发布
devexpress 2013 的第二个大版本出来了,一如既往, 基本上还是一个大补丁包.各位看官,自己看. What's New in 13.2.2 (VCL Product Line) New ...
- DevExpress VCL v16.1.3发布
ExpressPDFViewer # BC3840:包含action标题和action提示的 Action classes 和 resource strings 重命名: class名称末尾中包含'A ...
- DevExpress VCL 13.1.4支持Delphi /C++Builder XE5
DevExpress VCL 13.1.4支持Delphi /C++Builder XE5 重大变化 ExpressLibrary dxHalfOfPi常数声明已经从cxGeometry单元移到了cx ...
- Devexpress VCL Build v2014 vol 15.2.3 发布
2016年第一个版本,继续修补. New Major Features in 15.2 What's New in VCL Products 15.2 Breaking Changes To lear ...
- DevExpress VCL 一键安装工具
一键安装工具 DxAutoInstaller-2.1.3 For Devexpress VCL:http://download.csdn.net/detail/wozengcong/8396181 一 ...
- DevExpress VCL 2014.1.2 for C++BUILDER XE6
DevExpress VCL 2014.1.2 for C++BUILDER XE6 1)下载 DevExpress VCL 2014.1.2下载链接:http://pan.baidu.com ...
- DevExpress VCL Controls 2019发展路线图(No.3)
[DevExpress VCL Controls下载] ExpressFlowChart 允许最终用户修改形状(v19.1) 允许开发人员以XML格式定义自定义形状(v19.1) 使用30多个新形状扩 ...
随机推荐
- 2017-12-15python全栈9期第二天第三节之使用while循环输出0到10
#!/user/bin/python# -*- coding:utf-8 -*-count = 0while count < 10: count += 1 print(count)
- TF报错解决
一.import tensorflow #h5py/__init__.py:34: FutureWarning: Conversion of the second argument of issubd ...
- docker安装优化
1.优化 #关闭防火墙 [root@docker03 ~]# systemctl stop firewalld.service [root@docker03 ~]# systemctl disable ...
- python dom操作
1.DOM介绍 (1)什么是DOM DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构.目的其实就是为了能让js操作html元素而制定的一个规范. DOM就是由节 ...
- C#设计模式(10)——桥接模式
1.桥接模式介绍 桥接模式用于将抽象化和实现化解耦,使得两者可以独立变化.在面向对象中用通俗的话说明:一个类可以通过多角度来分类,每一种分类都可能变化,那么就把多角度分离出来让各个角度都能独立变化,降 ...
- jQuery视频格式的验证
$(document).on('change','#videofile',function() { var file = this.files[0]; if (!/video\/\w+/.test(f ...
- exp和imp导入导出时表空间问题【未完】
准备工作 第一步: 创建教师和学生用户 教师用户/密码 TEACHER/t123456 学生用户/密码 STUDENT/s123456 参考链接 http://www.cnblogs.com/what ...
- PHP7 网络编程(四)signal信号【待】
https://blog.csdn.net/summy_j/article/details/73199069
- PHP7 网络编程(二)daemon守护进程
前言 在一个多任务的计算机操作系统中,守护进程(英语:daemon,/ˈdiːmən/或/ˈdeɪmən/)是一种在后台执行的计算机程序.此类程序会被以进程的形式初始化.守护进程程序的名称通常以字母“ ...
- js 数组拷贝与深拷贝
1.对于普通数组(数组元素为数字或者字符串) var _testCopy = [1,2,3].concat();//拷贝数组(浅拷贝) 2.对于对象数组 (深拷贝) //形如var _objArr=[ ...