在一条要录入的记录中,其中某个字段需要输入数据(必须输入的),如果没有输入数据的话,就锁定光标,并用中文提示用户请输入数据,请问改如何实现?

解决方案 »

  1.   

    在DBGrid的OnColExit事件还是OnExit事件,我忘了
    你试试
      

  2.   

    在 OnColExit 事件中写代码。
      

  3.   

    也可以在BeforePost事件中判断
    procedure TForm1.ADOTable1BeforePost(DataSet: TDataSet);
    var
     i : integer;
    begin
         for  i := 0 to  adotable1.FieldCount-1 do
         begin
               case  adotable1.Fields.Fields[i].DataType of
               ftString :
                        if length(adotable1.Fields.Fields[i].AsString) <= 0 then
                        begin
                              showmessage('字符串不能空');
                              abort;
                        end;           ftInteger:
                       if length(adotable1.Fields.Fields[i].AsString) <= 0 then
                       begin
                             showmessage('数字不能空');
                             abort;
                       end;
               ftDateTime:
                       if adotable1.Fields.Fields[i].AsDateTime = 0 then
                       begin
                             showmessage('日期不能空');
                             abort;
                       end;
               ftCurrency:
                        if adotable1.Fields.Fields[i].IsNull then
                       begin
                             showmessage('金额不能空');
                             abort;
                       end;
               end;
         end;
    end;