这个递归遍历错在哪?

zyhtz 2004-12-06 09:49:24
在窗口初始化中:SetTree(-1,0)
function SetTree(int ParentID,int Handle)//ParentID上级节点,Handle上级树节点
{
string sName
int ID,HandleID
DECLARE ORG CURSOR FOR
SELECT ORG_ID,ORG_NAME
FROM ORGANIZATION
WHERE ORG_PARENT_ID=:ParentID;
OPEN ORG;
FETCH ORG INTO :ID,:sName;
DO WHILE SQLCA.SQLCODE>=0
treeviewitem tvi_item
tvi_item.label=sName
tvi_item.data=ID
tvi_item.Children=true
tvi_item.pictureindex=1
tvi_item.selectedpictureindex=2
HandleID=tv_gov.insertitemlast(Handle,tvi_item)
SetTree(ID,HandleID)
FETCH ORG INTO :ID,:sName;
LOOP
CLOSE ORG;
}
看来看去没发现什么错误,但这个树就是出不来,大家看看错在哪
...全文
91 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
aichangfeng 2004-12-07
  • 打赏
  • 举报
回复
是不是树型没设置相应的图片
th820901 2004-12-07
  • 打赏
  • 举报
回复
DO WHILE SQLCA.SQLCODE=0
fibbery 2004-12-07
  • 打赏
  • 举报
回复
DO WHILE SQLCA.SQLCODE=0
fibbery 2004-12-07
  • 打赏
  • 举报
回复
呵呵,不对
fibbery 2004-12-07
  • 打赏
  • 举报
回复
function SetTree(int ParentID,int Handle)//ParentID上级节点,Handle上级树节点
{
string sName
int ID,HandleID
DECLARE ORG CURSOR FOR
SELECT ORG_ID,ORG_NAME
FROM ORGANIZATION
WHERE ORG_PARENT_ID=:ParentID;
OPEN ORG;
FETCH ORG INTO :ID,:sName;
DO WHILE SQLCA.SQLCODE>=0
treeviewitem tvi_item
tvi_item.label=sName
tvi_item.data=ID
tvi_item.Children=true
tvi_item.pictureindex=1
tvi_item.selectedpictureindex=2
HandleID=tv_gov.insertitemlast(Handle,tvi_item)
FETCH ORG INTO :ID,:sName;
LOOP
CLOSE ORG;
SetTree(ID,HandleID)
}
nccxl 2004-12-07
  • 打赏
  • 举报
回复
你写个MESSAGEBOX看看HandleID的值都是多少吧。
另外Handle是LONG类型的。
dingzhaofeng 2004-12-06
  • 打赏
  • 举报
回复
类型不匹配

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧