1.你设置ReadOnly时,应该先Close,不知你是怎么做的。
2.可能还是跟第一条有关吧
3.在BeforePost中写代码

解决方案 »

  1.   

    to InsideDelphi(ID)
    这样的错误很常见,一般情况下是真的出错,而不是另外一个程序打开了表单。 
      

  2.   

    beforescroll事件里提醒用户是否提交修改procedure TForm1.Table1BeforeScroll(DataSet: TDataSet);
    begin
      if Table1.State in [dsInsert, dsEdit] then
        //提醒用户是否提交修改
    end;
      

  3.   

    要确定该表只有一个application在修改它。可能是有多个连接了。。
      

  4.   

    我只有一个程序使用此数据表单,但这个程序中有两个窗体要用到此表单。但我认为这只是
    在同一个程序内使用,没有问题吧?
    再有,我的两个使用此表单的不同窗体并不同时出现,都是在一个被Close后,才调用
    Application.CreateForm()生成另一个,窗体被Close前,需要显式的调用Table.Close 吗?
    如果不显式的调用,Table处于什么状态?
      

  5.   

    有可以回答上面问题的吗?
    为什么我在改变Table的状态后(Table.Edit),后来又莫名其妙的给变回原来
    状态(Table.state=dsBrowse)?
      

  6.   

    如果你是Free,就不需要再调用了,如果只是Close,还需要显式调用。
      

  7.   

    为什么我在改变Table的状态后(Table.Edit),后来又莫名其妙的给变回原来
    状态(Table.state=dsBrowse)? 
      

  8.   

    “如果你是Free,就不需要再调用了,如果只是Close,还需要显式调用。 ”好像很有道理!
    如果我只是Close,哪么Table处于什么状态?对同一程序的其他的窗体有什么影响?
      

  9.   

    Table.Edit;方法使用起来问题很多,状态老变,害的我的程序在使用Table.state  
      判断的地方老不能按我想要的流程走。请问,Table.Edit;方法的正确使用方法?
      

  10.   

    Table.Edit;方法使用起来问题很多,状态老变,害的我的程序在使用Table.state  
      判断的地方老不能按我想要的流程走。请问,Table.Edit;方法的正确使用方法? 
      

  11.   

    凡是Move,Next,Prior,Insert,Append等函数都改变了Table.State属性为dsBrowse. ”这句话对吗? 
    Table.Edit;方法使用起来问题很多,状态老变,害的我的程序在使用Table.state  
      判断的地方老不能按我想要的流程走。请问,Table.Edit;方法的正确使用方法? 
    这个问题如何解决? 
      

  12.   

    我觉得你的问题太乱了,而且没有将你现在的源代码写清楚,干脆MAIL TO ME。
    E-MAIL:[email protected],定给你完满答复!