把mynode,fieldbyname('gdmc').asstring
用字符串代替试试,如:Items.AddChild (mynode,'abcd');
如果正常就说明是query1的问题,看看query1的属性设置,如光标等

解决方案 »

  1.   

    var
       mynode:ttreenode;
    begin
       query1.Active :=true;
       with treeview1 do
          begin
             mynode:=items.Add (nil,'@'+' '+'工地信息');
             query1.First ;
             while not query1.Eof do
                begin
                   Items.AddChild (mynode,query1.fieldbyname
                                   ('gdmc').asstring);
                   query1.next;
                end;
          end;
    end;
      

  2.   

    我突然发现,我在另外一个控件操作中加了这样的一条代码就出现那种错误了:procedure treeview1change(sender:....)
        begin
          edit1.text:=treeview1.selected.text;
    问题好像是我加了上述的代码的缘故,请问各位这是什么原因啊
      

  3.   

    var
       mynode:ttreenode;
    begin
       query1.Active :=true;
       with treeview1 do
          begin
             items.Clear;//加
             mynode:=items.Add (nil,'@'+' '+'工地信息');
             query1.First ;
             while not query1.Eof do
                begin
                   Items.AddChild (mynode,query1.fieldbyname
                                   ('gdmc').asstring);
                   query1.next;
                end;
          end;
    end;
      

  4.   

    问题好像是我在treeviewchange 时加入下面的代码导致的:
       edit.text:=treeview.selected.text;
    (我是在formcreate状态下动态在treeview加入gdmc的字段值的)
      

  5.   

    var
        mynode:TTreeNode;
        tmpnode:TTreeNode;
    begin
        query1.Active := true;
        with treeview1 do
        begin
             Items.Clear;
             mynode := Items.Add (nil,'@'+' '+'工地信息');
             query1.First ;
             while not query1.Eof do
             begin
                 tmpnode := Items.AddChild (mynode,query1.FieldByName
                                   ('gdmc').AsString);
                 query1.Next;
             end;
        end;
    end;