在dxdbedit中只能输入数字,退格键,不能输入汉字.说明dxdbedit已经与数据的相应字段做了关联.
我使用的是以下两种情况只对edit管用, 对dxdbedit不管用,均是用的是keypress事件
1、 case key of
       '0'..'9',#8:;
    else
       key:=#0;
2、if not (key in['0'..'9',#8] then 
       key:=#0;
请高手给出一个方法让已与数据库的表字段关联的dxdbedit只能接受数字,退格

解决方案 »

  1.   

    费这劲干吗,既然已经用了dx的组件,怎么不用dxDBCurrencyEdit
      

  2.   

    好像记得字段是数字类型的话,dxdbtextedit应该只接受合法的数字类型字符啊,除非楼主的数据字段是字符类型而又只允许输出数字。难道是我记错了?
      

  3.   

    DBEdit綁定了資料庫的數字類型。文本輸入了漢字了。不信你試試。
      

  4.   

    就是,绑定后你想输汉字也输不了,如果确实要做,代码如下:
    procedure TForm1.Button1Click(Sender: TObject);
    var E:Extended;
    begin
        if not TryStrtofloat(edit1.Text ,E)    then
        MessageBox(self.Handle,'请输入数值','提示',64);
    end;
      

  5.   

    keypress事件  if not (key in ['0'..'9','.',#8]) then
      begin
        key:=#0;
        Messagebeep(0);
      end;