请教treeview的递归生成
addchild(long handle1)
long li_i1,li_len,li_len2,ii_xx,li_count
string tmp
treeviewitem tvi
tv_info.getitem(handle1,tvi)
li_len = len(string(tvi.data))
li_len2 = li_len +2
tmp = "len(trim(dept_code)) = " +string(li_len2)+" and &
left(dept_code,"+string(li_len)+") = '"+string(tvi.data)+"'"
dw_temp.setfilter(tmp)
dw_temp.filter()
dw_temp.setsort("#1 A")
dw_temp.sort()
li_count = dw_temp.rowcount()
//messagebox("",li_count)
if (li_count >=1) then
for li_i1=1 to li_count
// tvi.data = dw_temp.getitemstring(li_i1,"dept_code")
// tvi.label = dw_temp.getitemstring(li_i1,"dept_name")
tvi.data = dw_temp.object.dept_code[li_i1]
tvi.label = dw_temp.object.dept_name[li_i1]
ii_xx=tv_info.insertitemlast(handle1,tvi)
// messagebox("",tvi.label)
addchild(ii_xx)
tv_info.getitem(ii_xx,tvi)
// messagebox("",tvi.label)
next
end if
return
注明: 如果把自调用屏蔽了完全没问题,一用自调用就出错
错误出现在 tvi.data = dw_temp.getitemstring(li_i1,"dept_code") 这段
---------------------------
PowerBuilder Application Execution Error (R0039)
---------------------------
Application terminated.
Error: Error accessing external object property dept_code at line 20 in function addchild of object w_1.
---------------------------
确定
---------------------------
整了一晚上,没法了,各位老大 给点思路吧