在TABLE里面有12个字段
FORM上有一个treeview一个DBGRID 一个DBMEMO
当点击treeview的子节点时,由表中查询出CAPTION字段值与节点的node.text相同的数据
将11个字段数据显示在DBGRID里面 一个字段的数据显示在DBMEMO里面if  node.Count>0 then exit
  else
  begin
    with adodataset1 do
    begin
      active:=false;
      CommandText:='select * from content where assort=:temp ';
      Parameters.ParamByName('temp').Value:=node.Text;
      active:=true;
    end;
  end;
这是我的代码,但是这样一来 所以数据就都会在DBGRID里面显示  而且DBGRID的COLUMNS的CAPTION属性不能自己设置 如果设置了 数据库的数据就显示不出来  几条能看出来 就是看不到数据  能大家帮帮忙 这是怎么回事啊 急啊!!!!

解决方案 »

  1.   

    本来我想在DBGRID里面设置11个COLUMN  最后一条数据就不出来了
    可是不行
    设置了就显示不出数据  别的都正常
      

  2.   

    if  node.Count>0 then exit
      else
      begin
        with adodataset1 do
        begin
          active:=false;
          CommandText:='select * from content where assort=:temp ';
          Parameters.ParamByName('temp').Value:=node.Text;
          active:=true;
        end;
        DBGrid1.Columns[11].Visible := false; //不显示12列
        DBGrid1.Columns[0].Title.Caption := '列1';  //修改DBGRID的COLUMNS的CAPTION
      end;
      

  3.   

    我试过了
    这样在点击了子节点后DBGrid1.Columns[0].Title.Caption是可以改变了
    但如果设置在FormCreate事件里面  
    点击了以后还是没数据啊
    因为启动的时候总不能让DBGRID就一个白框框放那边吧
    为什么不能在得到数据前改变DBGrid1.Columns[0].Title.Caption呢
      

  4.   

    ??
    双击你的DBGrid,在弹出来的Editing DBGrid1.Columns框上点Add new按钮,加进11个Column,修改Title的Caption。然后在取出数据后为DBGrid1的每个Column的FieldName赋值。
      

  5.   

    dbmemo里的数据总是能显示出来
    只要在设计时期设置了COLUMN的话
    DBGRID的数据就显示不出来
    DBGrid1.Columns[11].Visible := false; 
        DBGrid1.Columns[0].Title.Caption := 'df'
    这两句还是执行了的
    而且数据库里有几条数据 在DBGRID里就出现几行
    就是看不到数据
      

  6.   

    而且数据库里有几条数据 在DBGRID里就出现几行
    就是看不到数据
    --什么意思?DBGRID里全是空的格子吗?
      

  7.   

    对啊 全部是空格子
    不过现在解决了
    先创建
    在数据导入前DESTROY
    晕  好烦啊