在编辑按钮下加入
dbgrid.readnoly:=false;
table1.edit;
保存按钮加入
table1.post;
dbgrid.readnoly:=true;

解决方案 »

  1.   

    用dbgrid 以table或query 绑定时,缺省时是可直接修改并存盘的。
    除非你把 dbgrid 的readonly 设为 true 或 把 table、query 设为 不可编辑
      

  2.   

    : YANGYUGW(yangyu) (2002-1-23 17:57:53)  得0分 
    在编辑按钮下加入
    dbgrid.readnoly:=false;
    table1.edit;
    保存按钮加入
    table1.post;
    dbgrid.readnoly:=true;  出错提示
    table1:dataset not in edit or insert node
    怎么改???
      

  3.   

    如果用的是TQuery的话,需要把RequestLive设为True
      

  4.   

    TQuery.request := true;
    Tquery.edit;
      

  5.   

    请问你是用的Table还是Query,如果是Table 的话:就如下:
    table1.open;
    table1.edit;
    table1.open;
    如果是Query:
    query1.request:=true;
    query1.close;
    query1.sql.clear;
    query1.sql.('sql.text');
    query1.open;
    query1.edit;
    query1.post;
      

  6.   

    看看是还有另一个控件(query 或table等)同样用着此数据源(表),且active属性为true,如果是的话,就将其active属性设为false.
      

  7.   

    if query.. .recordcount<>0 then
     begin
      dbgrid1.readonly :=false;
      query...   :=true;//query..可修改
     end else
     begin
      dbgrid1.readonly :=true;
      query...   :=false;
     end;
      

  8.   

    上边
      sql.add('select .. form.. where fieldname=:fieldname');
      ...
      query...open;
      

  9.   

    我是
    查询得到的记录是不可修改的,增加一个修改按钮,
    按了之后就可直接在dbgird中修改。在dbgrid修改后,按保存按钮将修改的保存。
      

  10.   

    可以通过设置query的requestlive:=true;来实现
      

  11.   

    用ADOQuery可以实现
    BDE的Query好像不行!
      

  12.   

    你们还没看懂我的意思
    查询得到的记录是不可修改的,在DBGRID中,增加一个修改按钮,
    按了之后就可直接在dbgird中修改。在dbgrid修改后,按保存按钮将修改的保存。
    代码怎么写呀???帮忙! 帮忙! 
    求助。
    急。##注意##:
    是按了修改按钮之后就可直接在dbgird中修改,原来是不可在DBGRID中修改的。
    求助。
      

  13.   

    不是dbgrid.readnoly:=false;
    dbgrid.readnoly:=true; 
    这么简单
      

  14.   

    很急吗?
    我写了一个,有你这样的功能,
    是要点DBGrid的里的一个字段来实现这样的功能,是我们的产品中的,
    我想帖出来,但怕到时没有饭碗.老板看的紧.
      

  15.   

    在DBGRID中,增加一个修改按钮?什么意思??