[上一章]    [下一章]

 

树形框组件操作讲解

作者:创世魂

 

● 概述

其效果如下:

1、树形框可以创建多级子项目,点击减号图标或双击项目可以进行收缩,如果将“显示加减框”属性设置为假,可以取消收缩图标的显示。

2、项目图标由“图片组”属性设置,设置后就可以在添加项目时,指定项目所显示的图标索引。

 

 

● 预设数据

 

1、 通过项目属性即可预设数据。

 

2、首先要点击“添加项目”按钮后,才能设置首个项目的标题。

 

3、 如果需要添加子项目,选中一个项目后点击“添加子项目”即可。

 

4、 如果需要给子项目添加同级的项目,选中后点击“添加项目”即可。

 

5、 子项目也可以继续添加子项目。

 

6、 最后点击“确认”按钮就可以保存数据,会自动生成项目所需文本。

 

7、 打开“项目”属性的帮助页,即可看到文本格式描述,也可以手动拼接文本实现项目添加。

注:本属性支持动态调用。

 

 

● 添加项目

 

帮助文档如下图:

通过“加入项目”方法即可实现添加项目功能,本方法共有7个参数。

除了参数1和2比较重要外,其余参数可省略。

 

代码编写如下图:

利用当前方法实现“项目”设计器中添加项目添加子项目的效果。

按钮1点击后进行添加项目:

1、如果想要实现添加当前选中项目的同级项目,首先需要利用“取父项目()”方法取出现行选中项的父项目索引。

2、拿到父项目索引后,将其放到“加入项目()”的参数1中,即可实现添加同级项目。

3、加入项目后会返回项目索引,利用“现行选中项”写属性即可选中当前项目。

按钮2点击后进行添加子项目:

直接给“加入项目()”方法的参数1提供现行选中项即可实现添加子项目。

 

运行效果如下图:

最终实现了和项目设计器中类似的效果。

 

 

● 修改项目

 

帮助文档如下图:

通过“置项目文本()”方法即可实现修改项目,本方法共有两个参数。

参数1:提供要修改的项目索引。

参数2:提供新的项目标题。

 

代码编写如下图:

按钮点击后修改选中项的标题。

 

运行效果如下图:

最终可实现修改选中项的标题。

 

 

● 删除项目

 

帮助文档如下图:

本方法共有1个参数,提供要删除的项目索引即可删除项目。

 

代码编写如下图:

删除选中项的项目索引。

 

运行效果如下图:

最终选中一个项目后即可将其删除,如果当前项目拥有子项目会一同删除。

注:如果需要删除全部项目,调用“清空()”方法即可。

 

 

● 编辑项目

 

代码编写如下图:

1、首先需要将“允许编辑”属性设置为真。

2、添加“开始编辑”事件,可以获取编辑前的文本。

3、添加“结束编辑”事件,可以获取编辑后的文本。

 

运行效果如下图:

最终编辑前后的文本都可以显示在编辑框中。

注:进入编辑状态并非双击,而是首先单击选中项目,在此单击时即可进入编辑状态。

 

 

● 取项目文本

 

帮助文档如下图:

通过本方法可取出某个项目的文本。

 

代码编写如下图:

1、如果想要实现实时取出选中项的文本,可以添加“项目被选择”事件,在本事件下即可实现。

2、 此事件的“选择方式”共有三个可选值,用于判断当前是通过哪种方式选择的。

返回0:表示键盘选择。

返回1:表示鼠标选择。

返回2:表示其它方式。

3、 在事件下判断“选择方式”参数就可以控制在哪种选择情况下取出项目文本。

 

运行效果如下图:

最终可以实时取出项目文本显示在编辑框中。

 

 

● 取父项目文本

 

帮助文档如下图:

调用“取父项目()”即可取出父项目索引,利用父项目索引结合“取项目文本()”方法即可取出父项目文本。

 

代码编写如下图:

为保证父项目存在,取出的父项目索引首先判断一下是否等于-1,如果不等于-1再进行取项目文本操作。

 

运行效果如下图:

最终父项目文本可以被成功取出,当无父项目时也可以弹出提示。

 

 

● 取子项目文本

 

概述:

如下图所示,取出“父项目1”的所有下级项目“子项目1、2、3”

 

代码编写如下图:

取出下级项目并不复杂,利用“是否有子项目()”“取项目数()”“取父项目()”“取项目文本()”方法,外加一个“现行选中项”读属性,最后配合计次循环即可实现。

1、添加“项目被选择”事件,用于项目被选择时就取出子项目文本。

2、清空编辑框内容。

3、判断是否有子项目,如果存在子项目则进入循环。

4、在循环中通过判断父项目索引是否等于选中项索引,从而判断选中项的下级索引是否属于选中项的子项目。

5、如果属于子项目则加入项目文本到编辑框,否则跳出循环。

 

运行效果如下图:

最终当项目选择时可以取出所有的同级子项目。

 

 

● 取根项目文本

 

概述:

如下图所示,取出“父项目1”“父项目2”等所有根项目文本。

 

代码编写如下图:

利用“取项目数()”“取缩进层次()”“取项目文本()”三个方法即可实现取所有根项目。

其中主要依赖“取缩进层次()”方法,当缩进层次返回1表示根项目,缩进层次返回2表示第二层的树项目,以此类推。

所以只需要循环所有项目数,判断“取缩进层次()”方法的返回值是否为1,就可以取出所有根项目文本。

 

运行效果如下图:

最终所有根项目文本被取出。

 

 

● 取项目路径

 

概述:

实现当选中一个项目后,将所有父项目取出以路径形式展示。

 

代码编写如下图:

利用“判断循环()”结合“取项目文本()”“取父项目()”即可实现取项目路径的效果。

其中最主要的是利用“取父项目()”的返回值,来判断是否已经到根项目,从而决定是否进入循环。

 

运行效果如下图:

最终项目被选择时可以取出项目路径。

 

 

● 展开/收缩项目

 

代码编写如下图:

循环所有项目数,调用“扩展()”方法即可进行全部扩展操作,也可以单独调用本方法执行单独展开某个项目。

如果需要收缩项目,将代码中的“扩展”改为“收缩”即可。

 

运行效果如下图:

按钮点击后即可全部展开项目。

 

 

● 显示选择框

 

帮助文档如下图:

通过“是否有检查框”写属性即可让树形框显示选择框。

注:本属性不支持动态调用。

 

代码编写如下图:

将本属性设置为真即可显示选择框。

 

运行效果如下图:

 

 

● 选择所有子项目并取出

 

帮助文档如下图:

选择子项需要使用“置检查框状态()”方法,本方法共有三个参数。

参数1:提供项目索引,从0开始。

参数2:提供选中状态,共有三个状态:0:未选中;1:选中;2:半选中

参数3:将本参数设置为真,即可将所有子项目全部选中。

 

代码编写如下图:

首先添加“检查框状态被改变”事件,通过判断“检查框状态”的返回值,从而调用“置检查框状态()”方法进行全选或者取消全选的操作。

想要在选中后取出被选择的项目文本,可以在循环项目时利用“取缩进层次()”实现,因为当前选中项目的缩进层次必然小于被选中子项目的缩进层次。

根据这一原理,就可以在循环项目的过程中,判断缩进层次就可以取出所有子项目的文本,当不符合条件时就跳出循环。

 

运行效果如下图:

最终当某个项目被选择时,其所有子项目可以被选中并取出。

 

 

● 保存项目并读取

 

代码编写如下图:

在树形框中保存项目非常简单,只需要利用“项目”读属性即可将所有项目全部读取出来,返回的数据为文本型,如果需要保存成文件直接调用“写出文本文件()”方法进行存储即可。

如果需要读取项目,读入文本文件后赋值给“项目”写属性即可。

 

运行效果如下图:

最终可以看到树形框2读取的项目和树形框1一致,证明树形框项目保存成功。

 

[上一章]    [下一章]