当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·窗体边框问题    »显示摘要«
    摘要: 请教各位大虾,如何隐藏窗体的标题栏,但窗体的边框还有立体感? ......
 ·为什么会出错你能给我解释吗    »显示摘要«
    摘要: create or replace procedure wangqiu(qianggegejilu in qianggege%rowtype) is str varchar2(1000) begin str := insert into qianggege values (qianggegejilu.code,qianggegejilu.name,qianggegejilu.sex,qia......


根椐数据库内容填充TreeView的问题问题解决立即结帐

库中有两个表,一个是部门列表,一个员工列表  
   
  P_BM表的结构为  
   
    序号,部门编号,部门名称,上级部门,部门说明  
   
  P_YG表的结构为  
      
    序号,员工编号,员工姓名,所属部门,等等。  
   
  现在在要把这两个表的内容添加到一个TreeView中,要求是:  
   
    一个部门要添加到它的上级部门下,没有上级部门的可以直接添加到根下,员工添加到所属部门下。  
    要考虑的情况是一个部门有多个多级子部门,其次是数据量很大。  
   
      
 

NO.1   作者: bxh2dai

只要部门的Treeview树解决了,我想你把员工加到部门树应该不是问题了吗?  
  Query1.SQL.Add(select   *   form   p_bm);这一句改成:  
                      Query1.SQL.Add(select   *   form   p_bm   order   by   上级部门);也许要好一些

NO.2   作者: spears

你可以在开始的时候只调最上层的部门  
  select   部门名称   from   p_bm   where   上级部门=  
  adoquery.sql.add(select   部门名称   from   p_bm   where   上级部门=);  
  adoquery.open;  
   
  while   not   adoquery.eof   do    
  begin  
  node:=treeview1.items.add(treeview1.selected,adoquery.fieldbyname(部门名称))//增加节点  
  str:=select   部门名称   p_bm   hwere   上级部门=+adoquery.fieldbyname(部门名称);  
  adoquery1.sql.add(str);  
  sdoquery1.open;  
  if   not   adoqeury1.eof   then  
  treeview1.items.addchild(node,temp);  
  end;  
  当展开treeview1时再把所需要的第二三层数据填进去  
   
  总的意思就是先只读一层数据,然后用户点到哪个节点再动态生成这个节点的一层子节点,以此类推吧

NO.3   作者: foreveryday007

//調用這個就行了  
  function   TForm1.GetTNByView(T:   TTreeView;   S:   String;   L:   TStringList):   TTreeNode;  
  var  
      I:Integer;  
      S1:String;  
  begin  
      S1:=L.Names[L.IndexOf(S)];  
      Try  
          for   i   :=   0   to   T.Items.Count   do  
          begin  
              Result   :=   GetTNByNode(T.Items[i],s);//這個調用下面的東西  
              if   Result   <>   nil   then   Exit;  
          end;  
      except  
          Result:=nil;  
      end;  
  end;  
   
  function   TForm1.GetTNByNode(T:TTreeNode;S:String):TTreeNode;  
  var  
      I:Integer;  
  begin  
      Try  
          for   i:=   0   to   T.Count   -   1   do  
          begin  
              if   T.Item[I].Text=S   then  
                  Result:=T.Item[i]  
              else   if   T.Item[I].Count   >   0   then  
                  Result   :=   GetTNByNode(T.Item[I],S);  
   
              if   Result   <>   nil   then   Exit;  
          end;  
      except  
          Result:=nil;  
      end;  
  end;  
   
   
  你試試看

NO.4   作者: IORILI

procedure   Tcpya_app.FormCreate(Sender:   TObject);  
  begin  
      datamodule2.tree.close;  
      datamodule2.tree.sql.clear;  
      datamodule2.tree.sql.add(select   name   from   plat   order   by   name);  
      datamodule2.tree.Active:=true;  
      datamodule2.tree.Open;  
      while   not   datamodule2.tree.Eof   do  
          begin  
            with   tv.Items   do  
      begin  
            MyTreeNode1   :=   Add(nil,trim(datamodule2.tree.fields[0].asstring));  
              with   datamodule2   do  
              begin  
                child.close;  
                child.SQL.Clear;  
                child.SQL.Add(select   comp   from   dalei   where   plat=+Trim(datamodule2.tree.Fields[0].asstring)++   order   by   comp);  
                child.Active:=true;  
                child.Open;  
                While   Not   child.Eof   do  
                begin  
                          TV.Items.AddChild(mytreenode1,trim(child.Fields[0].AsString));  
                          child.Next;  
                          end;   end;  
                datamodule2.tree.Next;  
        end;  
        end;  
  end;  
   
  使我再做项目的时候写的   其中tree、child   TADOQUERY

NO.5   作者: tanqth

我有一个控件,是TREE的,但您表的格式不同,您如果用一个SQL把两个表进行联接,就好办了,因为我的控件只要有Tree编码与对应名称就行了。  
   
  如:  
  P_BM表的结构为  
   
    序号,部门编号,部门名称,上级部门,部门说明  
   
  P_YG表的结构为  
      
    序号,员工编号,员工姓名,所属部门,等等。  
  中,用P_YG表中的所属部门与P_BM表中的部门编号或部门名称为关联,建立视图,结构如:  
  序号,部门编号,部门名称,上级部门,部门说明,序号,员工编号,员工姓名,所属部门,等等,您就可以用我那控件了。  
  http://www.myjinsui.com/down/soft/gbxx.exe


    摘要: wise install 9.02在安装最后有个是否重新启动计算机的提示框,如和去掉? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE