procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
//循环读取勾选节点代码及内容
//StateIndex 1:unchecked(未选择) 2:checked(选择) 3:indeterminate(不确定的)
for i := to RzCheckTree1.Items.Count - do
begin
if RzCheckTree1.Items[i].StateIndex = then
begin
//VarToStr(RzCheckTree1.Items[i].Index); //读取节点标识序号
//RzCheckTree1.Items[i].Text; // 读取节点值
Memo1.Lines.Add(RzCheckTree1.Items[i].Text);
end; // 另一种判断方式
// if RzCheckTree1.ItemState[i] = csChecked then
// begin
// Memo1.Lines.Add(RzCheckTree1.Items[i].Text);
// end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
//展开全部节点
RzCheckTree1.FullExpand;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
//关闭全部节点
RzCheckTree1.FullCollapse;
end;
procedure TForm1.Button4Click(Sender: TObject);
var
i: Integer;
begin
//全部选择
//StateIndex 1:unchecked(未选择) 2:checked(选择) 3:indeterminate(不确定的)
for i := to RzCheckTree1.Items.Count - do
begin
RzCheckTree1.Items[i].StateIndex := ;
end;
end;
procedure TForm1.Button5Click(Sender: TObject);
var
i: Integer;
begin
//全部取消选择
//StateIndex 1:unchecked(未选择) 2:checked(选择) 3:indeterminate(不确定的)
for i := to RzCheckTree1.Items.Count - do
begin
RzCheckTree1.Items[i].StateIndex := ;
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
var
i: Integer;
begin
//反选
//StateIndex 1:unchecked(未选择) 2:checked(选择) 3:indeterminate(不确定的)
for i := to RzCheckTree1.Items.Count - do
begin
if RzCheckTree1.Items[i].StateIndex = then
RzCheckTree1.Items[i].StateIndex :=
else
RzCheckTree1.Items[i].StateIndex := ;
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
var
i: Integer;
begin
//读取全部父节点
for i := to RzCheckTree1.Items.Count - do
begin
if RzCheckTree1.Items[i].Level = then
Memo1.Lines.Add(RzCheckTree1.Items[i].Text);
end;
end;
procedure TForm1.Button8Click(Sender: TObject);
var
i: Integer;
begin
//读取全部第二级子节点
for i := to RzCheckTree1.Items.Count - do
begin
if RzCheckTree1.Items[i].Level = then
Memo1.Lines.Add(RzCheckTree1.Items[i].Text);
end;
end;

RzCheckTree基本使用的更多相关文章

  1. 根据数据库结构生成RzCheckTree

    现在大多数的方法是采用递归,但这种操作会频繁的去select数据库,降低了执行效率,稍微改动一些,效果会好不少,这里介绍一种方法,即一次性select出所有数据,然后按照ParentID排序,逐条添加 ...

  2. Delphi - 手把手教你基于D7+Access常用管理系统架构的设计与实现 (更新中)

    前言 从事软件开发工作好多年了,学的越深入越觉得自己无知,所以还是要对知识保持敬畏之心,活到老,学到老! 健身和代码一样都不能少,身体是革命的本钱,特别是我们这种高危工种,所以小伙伴们运动起来!有没有 ...

随机推荐

  1. mybatis 传入多个参数

    一.单个参数: public List<XXBean> getXXBeanList(@param("id")String id); <select id=&quo ...

  2. [Bayes] Point --> Hist: Estimate "π" by R

    Verify the Monte Carlo sampling variability of "π". p = π/4 与 所得 0.7854 比较接近,故满足 Central L ...

  3. 【代码审计】YUNUCMS_v1.0.6 前台反射型XSS跨站脚本漏洞分析

      0x00 环境准备 QYKCMS官网:http://www.yunucms.com 网站源码版本:YUNUCMSv1.0.6 程序源码下载:http://www.yunucms.com/Downl ...

  4. iOS开发-- Xcode 6单元测试

    占坑 http://m.oschina.net/blog/377800 http://www.cnblogs.com/sunshine-anycall/p/4155649.html http://ob ...

  5. Xlight FTP搭建FTP服务器教程

    Xlight FTP搭建FTP服务器教程 1. 服务器公共设置 设置FTP 端口, ip 等 FTP 服务器公共的设定 2. 设定 FTP 用户, FTP 目录 等信息    备注: 这个用户是非Wi ...

  6. Win7/Win8安装"我们无法创建新的分区,也找不到现有的分区"的解决方法

    如果你用pe启动光盘和pe启动盘.加载iso安装时遇到"我们无法创建新的分区,也找不到现有的分区"的情况.. 把iso里的boot和bootgmr以及sources复制到c盘,pe ...

  7. postgresql----条件表达式

    postgresql支持CASE,COALESCE,NULLIF,GREATEST,LEAST条件表达式,使用它们有时候可以简化许多功能实现. 测试表 test),sex )); CREATE TAB ...

  8. 洛谷 P1181数列分段SectionI 【贪心】

    题目描述 对于给定的一个长度为NN的正整数数列A_iAi​,现要将其分成连续的若干段,并且每段和不超过MM(可以等于MM),问最少能将其分成多少段使得满足要求. 输入输出格式 输入格式: 第1行包含两 ...

  9. 在windows下用nvm 安装node

    nvm 可以帮助切换node版本 在此文中,会特意指明一些坑,防止再次踩坑.第一个坑就是,如果你已经单独安装了node,建议先卸载,再来看本文. 1. nvm 下载 nvm 的下载地址:https:/ ...

  10. linux文件系统扩展属性

    翻译自man手册,水平有限,有错还望不吝指出.... 扩展属性是与文件和目录相关的name:value对,用来提供文件系统的一些附加功能,例如ACL.对文件或是目录拥有读权限的用户可以看到其扩展属性. ...