假如在服务端有很多数据,在客户端需要用treeview 显示数据,能否一次下载很多数据用treeview 显示。
这样会不会造成客户端当机。不能话,怎么能用用treeview 显示数据?

解决方案 »

  1.   

    客户端用clientdataset连接,假如一次下载100条记录。
      

  2.   

    我是这样展开节点的。打开记录后,循环添加节点。
    在三层中,客户端应是少量多次存取数据,设定clientdataset 的 packetrecords 为50 ,然后getnextpacket() 返回下一个数据包。在程序中应该怎么写。下载完数据用treeview显示?
    const
      ID_DEPT = 2;
    var
      nLevel,i: Integer;
      pNodes: array[0..1023] of TTreeNode;
      lpID, lpName: string;
    begin
      
      query2.Close;
      query2.SQL.text:= 'SELECT * FROM goodstype ORDER BY lcode';
      query2.Open;
      pNodes[0] := nil;
      TreeView1.Items.Clear;
         while not query2.Eof do
        begin
          lpID := query2['lcode'];
          lpName := query2['name'];
          nLevel := Length(lpID) div ID_DEPT;
          pNodes[nLevel] := TreeView1.Items.AddChild(pNodes[nLevel - 1], lpName);
          query2.Next;
        end;
     treeview1.FullExpand;
      

  3.   

    请问clientdataset一次下载多少数据为合适?
      

  4.   

    谢谢你的回答!
    请看这里的问题,我不时凭空想象的。
    http://delphi.ktop.com.tw/board.html?cid=30&fid=66&tid=77083