在dbgrid或dbedit控件中怎么检验输入或修改的数据的正确性?
例如:我的table1连接dbgrid,table1中有int型字段aaa。
      那么我在dbgird中修改aaa字段的值时,如果我输入的是给字符串,那要怎么做
才能让dbgdrid提示我输入数据错误?

解决方案 »

  1.   

    if not (Key in ['0'..'9',#13,#27,'.','-',Char(VK_BACK)]) then
        Key := #0;
     if (Pos('.', Edit4.Text) > 0) and (Key = '.') then
        Key := #0;
      

  2.   

    DBGrid.OnExit
    DBGrid.OnKeypress
    DBGrid.Datasource.Dataset.BeforePost  --這種最安全
      

  3.   

    我觉得如果库里该字段是整形的话,字母应该按不进去才对。不过E可以按进去,因为E是科学记数法表示,比如1E2,就是100。
      

  4.   

    在DataSet的BeforePost事件里判断也可以