首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

怎么判断在DBGridEh中某格输入数据是否符合约束

2013-11-29 
如何判断在DBGridEh中某格输入数据是否符合约束当我在单价列里手工输入“5.”没错误,当输入“5.5.”就错误,现

如何判断在DBGridEh中某格输入数据是否符合约束
当我在单价列里手工输入“5.”没错误,当输入“5.5.”就错误,
现在我怎么写事件来判断都不行,还没跑到这些事件的时候就错误了:
'5.5.' is not a valid floating point value for field 'dj'

procedure TFormJhd.ClientDataSet1djValidate(Sender: TField);
var
  f : Double;
begin
  if ClientDataSet1.IsEmpty then
    Exit;

  try
      f:=StrToFloat(DBGridEh1.DataSource.DataSet.Fields[5].value);
    except on e:Exception do
      ShowMessage(e.Message);
    end;
end;

procedure TFormJhd.DBGridEh1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  f : Double;
begin
  if ClientDataSet1.IsEmpty then
    Exit;

  if TryStrToFloat(DBGridEh1.DataSource.DataSet.Fields[5].value, f) then
    //
  else
  begin
    DBGridEh1.DataSource.DataSet.Fields[5].value:='';
    ShowMessage('非法数据');
  end;
end;

我现在就是想当鼠标离开单价列的时候给个判断,判断输入的数据是不是float或整数
用的控件是DBGridEh
[解决办法]
VarIsfloat

热点排行