delphi Edit1只能显示整数

解决方案 »

  1.   

    procedure TForm1.Edit1Change(Sender: TObject);
    var
      aa:Integer;
    begin
      if TryStrToInt(Edit1.Text,aa) then    else
          edit1.Text := '不是整数';
    end;
      

  2.   

    楼主是不是只允许录入数字,且不包括小数点啊?
    如果是的话,可以通过onKeyPress控制
    if not (key in ['0'..'9',#8,#13] then 
       key:=#0;注:如果允许小数点,则可以加上 #46
       #8为退格键
      

  3.   

    Edit1只能输入整数。不能输入小数、浮点数和文字
      

  4.   


      SetWindowLong(edtName.Handle,GWL_STYLE, GetWindowLong(edtName.Handle,GWL_STYLE) or ES_NUMBER);
    这样试试
      

  5.   

    在edit1控件的onKeyPress事件中写如下代码:
    if not (key in ['0'..'9',#8,#13] then
      key:=#0;注:如果允许小数点,则可以加上 '.'
      #8为退格键
      

  6.   

    同上,可以再限制下属性maxlength
      

  7.   

    procedure TFm_pos2main.Ed_inputKeyPress(Sender: TObject; var Key: Char);
    begin
      if not(Key in ['0'..'9',#9,#13,#8]) then Key :=#0;
          //other   code
    end;
      

  8.   

    onkeypress
    或者strtoint,报异常就是不正确了。
      

  9.   

    条条大路通罗马,不过最简单的方法:用TMaskEdit