问题如下:
1.怎样将DbGrid中的某一列的背景设置成某一颜色.
2.DbGrid中数据的只能修改,不能进行增加和删除记录的操作。
3.在DbGrid中的数据用户实时修改并不能保存。只有当用户按一个命令按钮“保存“时才将数据写入表中。否则直接在表中修改的内容无效.在线等侯,问题解决就给分。

解决方案 »

  1.   

    1
    procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
      Field: TField; State: TGridDrawState);
    begin
       if field.Index=0 then dbgrid1.Canvas.Brush.Color:=clgreen;
       dbgrid1.DefaultDrawDataCell(rect,field,state);
    end;
      

  2.   

    3.编辑之前database1.StartTransaction;按钮里
    databse1.commit;取消
    databse1.rollback;
      

  3.   

    谢谢!那第二个问题怎么实现?即让当前的DbGrid上只能编辑数据,而不能进行删除和增添记录。
      

  4.   

    第2个问题:
     用adoquery进行连接查询时:将它的locktype设置为ltBatchOptimistic,相应的dbgrid就不能直接在表上进行增加和删除记录的操作。
      

  5.   

    数据集有个属性UPDATECACHE,把他设置成TRUE,设置之后,所有更新的数据统一提交。
      

  6.   

    1、同意一楼的见解
    2、DBGrid中有一选项;(想问一下,添加删除不是都要你自己写命令才会执行吗?不执行相应命令不就行了吗。)
    3、简单的方法:用个临时表保存数据,这样操作最好控制,一切尽变化在自己的掌握中!
      

  7.   

    请高手给个:“数据集有个属性UPDATECACHE,把他设置成TRUE,设置之后,所有更新的数据统一提交。” 的代码好吗?