如题,把DBGrid的最后一行的某一列的值改变或去掉,不能把整行都去掉谢谢大家!

解决方案 »

  1.   

    修改DBGrid对应数据集最后行对应记录的值
      

  2.   

    dbgrid只是一个数据感知控件,你只需要将所绑定的dataset移动到最后一条记录,然后修改该记录的某列数据就可以了
    eg.var
      ds: TDataSet;
    begin
      ds:= self.DBGrid1.DataSource.d.DataSet;
      ds.Last;
      ds.Edit;
      ds.FieldByName('colname').AsString:='fdsafdsa';
      ds.Post;
    end;
      

  3.   

    不是一张表,而两个SQL语句union all在一起的如果用edit,post会报错
      

  4.   

    这样的话,你不如用stringgrid来做了,dbgrid是无法按你的要求实现的~~~
      

  5.   

    加一个DBNAVIgator1 (导航仪)当修改了dbgrid 的行列值就提交按"   √" 可以吗?
      

  6.   

    这个dbgrid只是显示没有提交,整个过程不能让客户操作,一旦edit了,客户就可以操作了,就有可能产生错误
      

  7.   

    靠~~~ 最后一条,肯定是最后一个union啦~~~改变的都是最后一个select里的东东,那么这个select的表,就是更的表,只要把前面的SQL语句A和最后的一个union语句B分开,就可以更新后再执行SQL语句A+B啦~~真的汗~~~
      

  8.   

    这样子的,两个select语句union all 在一起,在外面又包了一层 order by ,而要dbgrid最后一行要改的列就是要order by 排列的列所以在dbgrid只能是它的显示效果改一下而不是改变它的值,上面有位朋友说到在OnDrawColumnCell里面画,这个要怎么实现?