我用dbgrid录入数据,然后在ADOQuery1的AfterScroll作如下判断,结果总是得不到正确的效果!
procedure TfrmStockPlan.RsStockPlanAfterScroll(DataSet: TDataSet);
var
eFlag:boolean;
begin
eFlag:=false;
with dataset do
begin
if FieldValues['provider']=Null then eFlag:=true;
if FieldValues['provider']='' then eFlag:=true;
//用上面两种方式做判断都得不到正确结果,要怎么才能知道该字段有没输入内容
if eFlag then
begin
showmessage('资料录入不完整!');
PostMessage(StockPlanList.Handle, WM_KEYDOWN, VK_ESCAPE, 0);
end;
end;
end;
procedure TfrmStockPlan.RsStockPlanAfterScroll(DataSet: TDataSet);
var
eFlag:boolean;
begin
eFlag:=false;
with dataset do
begin
if FieldValues['provider']=Null then eFlag:=true;
if FieldValues['provider']='' then eFlag:=true;
//用上面两种方式做判断都得不到正确结果,要怎么才能知道该字段有没输入内容
if eFlag then
begin
showmessage('资料录入不完整!');
PostMessage(StockPlanList.Handle, WM_KEYDOWN, VK_ESCAPE, 0);
end;
end;
end;
PostMessage(StockPlanList.Handle, WM_KEYDOWN, VK_ESCAPE, 0);
模拟按下ESC键取消,返加刚刚编辑的那一行,可确执行了四次showmessage('资料录入不完整!');有什么办法解决吗?