1000                                                     A
1000 1000                                                A1
1000 1000 1000                                           A11
1001                                                     B

解决方案 »

  1.   

    to gase(浪花):
    能否详细点,或给一个例子呢?e_mail:[email protected] 一定会给分的!!
      

  2.   

    starcbh(chinaboy):你好!
    好的,谢谢!
      

  3.   

    在你的数据库中建立一个目录表,其中的字段如:
    [PKID][PID][NAME][TYPE]然后在其中添加一条初始化记录,代表根目录,如名称为root或者是别的。
    PKID是目录的主健,由数据库自动生成。
    PID代表父目录
    TYPE表示目录的类型
    在代码中,创建一个DataSet,先读取root的所有子目录放入一个该DataSet的一个DataTable中,如果你想一次性的读入所有的目录记录,你需要遍历第一个DataTable,分别为他们创建子DataTable,考虑到性能的原因,你可以每次只读取2层,当用户选中一个选项时,再到数据库中取出这个记录下的直接子目录。
      

  4.   

    fill_tree(long al_handle):long ll_no,ll_cnt,ll_child,ll_h
    string ls_bh,ls_mc,ls_pcode
    treeviewitem tv_child,tv_two
    if al_handle < 0 then
    return
    end if
    a_tv.getitem(al_handle,tv_child)
    ls_pcode = string(tv_child.data)
    declare mycur  cursor for select bh,mc from jxc_kw 
    where (zt = :n_user.zt) and (trim(pcode) = :ls_pcode);//pcode为数据库中的父字段
    open mycur;
    fetch mycur into :ls_bh,:ls_mc;
    if sqlca.sqlcode <> 0 then
    a_tv.getitem(al_handle,tv_two)
    tv_two.pictureindex = 3
    tv_two.selectedpictureindex = 4
    a_tv.setitem(al_handle,tv_two)
    close mycur;
    return
    //没有找到子点就把图变成index 为3,4的图,以区别
    end if
    do while SQLCA.SQLCODE = 0
    ll_h = a_tv.insertitemlast(al_handle,ls_mc,1)
    tv_two.data = trim(ls_bh)
    tv_two.label = trim(ls_bh) + '-' + trim(ls_mc)
    tv_two.pictureindex = 1
    tv_two.selectedpictureindex = 2
    a_tv.setitem(ll_h,tv_two)
          fill_tree(ll_h)
    fetch mycur into :ls_bh,:ls_mc;
    loop
    close mycur;
      

  5.   


    这是我要实现树形结构!
                      A
                   B1    B2
                C1   C2
              D1  D2
    大家能否提供算法,我马上就给分了!
      

  6.   

    写一个函数,传入一个node
    和 tree用这个node的数据去数据库里找以它为父亲为它的数据行,找到就全填到自已下面。每找到一个子节点都同样调用这个函数,传入自已的node ... .. 不就搞成递归了吗?当然,第一级的必须从属一个特殊的节点因为你一开始要传入一个根节点
      

  7.   

    starcbh(chinaboy)非常感谢你!你好棒啊
    我去试一下!分下次就送给你!
    还有,如何才能跟你联系呢?能交个朋友吗?QQ:21201161
      

  8.   

    nothing 我不敢上qq,老板。[email protected]