Treeview控件问题
//构造树形图开始
datastore ds_ca,ds_cb,ds_cc
treeviewitem tvi_class
long handle1,handle2,handle3
long i,j,k,n_ca,n_cb,n_cc
string ca_no,ca_name,cb_no,cb_name,cc_no,cc_name
ds_ca=create DataStore
ds_ca.dataobject="d_classa_tview"
ds_ca.settransobject(sqlca)
n_ca=ds_ca.retrieve()
ds_cb=create datastore
ds_cb.dataobject="d_classb_tview"
ds_cb.SetTransobject(sqlca)
ds_cb.retrieve()
ds_cc=create datastore
ds_cc.dataobject="d_classc_tview"
ds_cc.SetTransobject(sqlca)
ds_cc.retrieve()
for i=1 to n_ca
ca_no=ds_ca.object.class_a_no[i]
ca_name=ds_ca.object.class_a_name[i]
tvi_class.label=ca_no + "-" + ca_name
tvi_class.data=ca_no
tvi_class.pictureindex=1
tvi_class.selectedpictureindex=2
tvi_class.children=true
handle1=tv_1.insertitemlast(0,tvi_class)
ds_cb.setfilter("class_a_no='"+ca_no+"'")
ds_cb.filter()
n_cb=ds_cb.rowcount()
for j=1 to n_cb
cb_no=ds_cb.object.class_b_no[j]
cb_name=ds_cb.object.class_b_name[j]
tvi_class.label=cb_no + "-" + cb_name
tvi_class.data=cb_no
tvi_class.pictureindex=3
tvi_class.selectedpictureindex=4
tvi_class.children=true
handle2=tv_1.insertitemlast(handle1,tvi_class)
ds_cc.setfilter("class_a_no='"+ca_no+"'"+"and class_b_no='"+cb_no+"'")
ds_cc.filter()
n_cc=ds_cc.rowcount()
for k=1 to n_cc
cc_no=ds_cc.object.class_c_no[k]
cc_name=ds_cc.object.class_c_name[k]
tvi_class.label=cc_no + "-" + cc_name
tvi_class.data=cc_no
tvi_class.pictureindex=3
tvi_class.selectedpictureindex=4
tvi_class.children=false
handle3=tv_1.insertitemlast(handle2,tvi_class)
next
next
next
destroy ds_ca
destroy ds_cb
destroy ds_cc
//构造树形图结束
这是我根据数据窗口构建树形图的代码,现在想实现在没有下级子节点的节点前用"-"代替,而有下级子节点的节点前用"+"来代替,如何做?
[解决办法]
- C# code
//构造树形图开始 datastore ds_ca,ds_cb,ds_cctreeviewitem tvi_classLong handle1,handle2,handle3Long i,j,k,n_ca,n_cb,n_ccString ca_no,ca_name,cb_no,cb_name,cc_no,cc_nameds_ca = Create datastoreds_ca.DataObject = "d_classa_tview"ds_ca.SetTransObject(sqlca)n_ca = ds_ca.Retrieve()ds_cb = Create datastoreds_cb.DataObject = "d_classb_tview"ds_cb.SetTransObject(sqlca)ds_cb.Retrieve()ds_cc = Create datastoreds_cc.DataObject = "d_classc_tview"ds_cc.SetTransObject(sqlca)ds_cc.Retrieve()For i = 1 To n_ca ca_no = ds_ca.Object.class_a_no[i] ca_name = ds_ca.Object.class_a_name[i] tvi_class