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. python concurrent.futures.Threadpoolexcutor的有界队列和无界队列

    1.默认是无界队列,如果生产任务的速度大大超过消费的速度,则会把生产任务无限添加到无界队列中,这样一来控制不了生产速度,二来是会造成系统内存会被队列中的元素堆积增多而耗尽. 2.改写为有界队列 cla ...

  2. 面向切面编程AOP,一些通用装饰器

    1.一些装饰器,可以减少重复编写.比较常用的. 用的时候函数上面加上装饰器就可以.这是一些装饰器,加在函数或者方法上,减少了很多重复代码. 除此之外工作中也用一些mixin类大幅减少代码. impor ...

  3. android 中文api

    http://www.embeddedlinux.org.cn/androidapi/

  4. 深入Java内存模型之阅读理解(2)

    锁的释放-获取建立的happens before 关系 锁是java并发编程中最重要的同步机制.锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息. 下面是锁释放-获取的示例代 ...

  5. 【中间件安全】Nginx 安全加固规范

    1. 适用情况 适用于使用Nginx进行部署的Web网站. 2. 技能要求 熟悉Nginx配置,能够Nginx进行部署,并能针对站点使用Nginx进行安全加固. 3. 前置条件 1. 根据站点开放端口 ...

  6. 【代码审计】大米CMS_V5.5.3 目录遍历漏洞分析

      0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...

  7. jstat 简介

      1. jstat -gc pid 可以显示gc的信息,查看gc的次数,及时间. 其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc ...

  8. js中的try/catch

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. mysql 冷热备份

    文章转自:http://www.linuxidc.com/Linux/2014-03/98710.htm 冷备份(OFF, 慢, 时间点上恢复)冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提 ...

  10. MySQL+Amoeba实现数据库读写分离

    参考:https://www.cnblogs.com/liuyisai/p/6009379.html 一,Amoeba是什么 Amoeba(变形虫)项目,专注 分布式数据库 proxy 开发.座落与C ...