1: 可以修改当前的数据,但是不准新增,如何控制?
2: 修改DBGrid数据时候,为Float,但只能为4位,且只能为正数,如果用户输入错误,则提示用户,且焦点要回到当前修改处.(假定为 query1)
谢谢各位.

解决方案 »

  1.   

    第一个问题好象不是什么问题
    你把updapte选项打开就可以了
    第二个问题
    if dbgrid1.fields[i].text…………判断条件 then
    dbgrid1.Fields[i].FocusControl;
      

  2.   

    1.你不提供query.next/query.append不就可以了么?
    2.if Length(query1.fieldbyname('你的字段名').asString)>4 or query1.fieldbyname('你的字段名').AsInteger<0 thenbegin 
       showmessage('input error');
       dbgrid1.fields[index].setFocus;
    end;
      

  3.   

    我来试试:
    第一个问题:
       在TQuery或是TTable的BeforeInsert事件中写上以下代码:
       abort;
    第二个问题:
       在TQuery或是TTable的BeforePost事件中写上以下代码(假定需要控制的字段为F1):
       if (F1.value<0) or  (F1.value>10000) then
       begin
         //弹出对话框提示用户输入有误
         abort;
         dbgird1.selectedindex:=那个字段的列索引
       end
      

  4.   

    如何禁止在DBGIRD,按crtl+DEL时弹出的对话框?
      

  5.   

    if u want to control this kind of question,
    if database is interbase and u use two layers, then u will deal with many things.