pb中的树型控件treeview的使用- -
//设置根节点
ltvi_r_node.label = "统计报表"
ltvi_r_node.pictureindex = 1
ltvi_r_node.selectedpictureindex = 1
ltvi_r_node.children = true
//插入根节点,返回根节点句柄
ll_root = tab_1.tabpage_1.tv_1.insertitemlast(0, ltvi_r_node)
//设置子节点
ltvi_j_node.label="季报"
ltvi_j_node.statepictureindex=2
//在根节点下插入子节点,ll_root根节点句柄
ll_lev_j=tab_1.tabpage_1.tv_1.insertitemlast(ll_root,ltvi_j_node)
//在一级子节点下再插入新的子节点
for i=1 to upperbound(j_m)
ltvi_j_node.label=j_m
//.data可以放置any类型,并返回any类型,需要进行转换
ltvi_j_node.data=trim("2")
//插入二级子节点
l_lev1=tab_1.tabpage_1.tv_1.insertitemlast(ll_lev_j,ltvi_j_node)
//循环的加入
for j=1 to dw_5.rowcount()
ltvi_n_node.label=trim(dw_5.object.ora031[j])
ltvi_n_node.data=trim(dw_5.object.ora030[j])
l_lev2=tab_1.tabpage_1.tv_1.insertitemlast(l_lev1,ltvi_n_node)
next
next
long tv_handle,lds_obj,ll_row,parent_handle
treeviewitem tv_new_item,tv_it2
//得到当前节点的句柄
tv_handle=tv_1.finditem(currenttreeitem!,0)
//通过该节点的句柄,获得该节点的信息item
getitem(handle,tv_new_item)
//item的级别.level
if tv_new_item.level=4 then
//得到当前节点的夫节点,
parent_handle=this.finditem(parenttreeitem!, handle)
getitem(parent_handle,tv_it2)
//得到item里的data数据,记得要进行类型转换
bbbh=string(tv_new_item.data)
end if
treeview控件的属性:
picture:在picture name中加入四个不同的图标,用于代表树视图中的两个层次(一、二级)、两种状态(未选、选中)。
delete items:运行中是否允许删除表项。
disable pragdrog: 运行中是否允许拖放表项。
edit labels: 运行中是否允许单击表项来改变表项的标题。
show buttons:是否在表项放显示+-按钮,有示相对的扩展和收缩。
hide selection:当该控件失去焦点时,选中项是否以高亮度显示。
show line:表项间是否加一竖线。
lines at root:所有根层表项是否用竖线连接。
indentation:子表项相对于父表项的向右缩进度。
item的主要属性:
label:string 型,树视图项的显示信息。
data:any型,树视图项的内部值。
level:integer型,树视图项在树视图中级别。
children:boolean 型,它决定该项是否有下一层(如图中书名)。
pictureindex:integer 型,该项非选中时所用的图标在图标队列中的编号。
selectedpictureindex:integer型,该项选中时所用的图标在图标队列中的编号。
生成treeviewitem项用到的函数:
insertitemfirst():将加入项作为第一项
insertitemlast():将加入项作为最后一项
insertitem():将加入项插入到指定项的后面
insertitemsort():按顺序放置。 |