怎么样验证edit1.text中的输入是数字还是字符,我要根据验证结果分别处理,嘿嘿忙了半天没搞出来

解决方案 »

  1.   

    如果只是这种情况的话,用StrtoFloat进行转换,如果有异常就表示为字符,否则为数字
      

  2.   

    第一:用MaskEdit 控件,可在输入的时候屏蔽字母
    第二:可用Val函数判断Edit1.Text里有没有非数字的字符,详细用法看帮助吧
      

  3.   

    判断ASCII码!!
    看看onKeyPress中的Char等于什么东西!
    或者循环Edit1.text里的每个字符,看看是否符合字符或者是数字,先看一下数字的ASCII码范围,再看看字符的Ascii范围!
      

  4.   

    光判断是否数字的话,可以用isnumeric
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
      if IsNumeric(Key) then ShowMessage('Numeric')
      else
        ShowMessage('other');
    end;
      

  5.   

    在onkeypress中判断,
    if key 是 字符(asscii码)then 。
    if key 是 数字(asscii码)then 。
      

  6.   

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
      if key in ['0'..'9'] then
        showmessage('ok');
    end;
      

  7.   

    //var i:real;
    begin
    try
      if  strtofloat(edit1.text)<>0 then ;//此处if ... then ..不作任何处理
    except
       showmessage('不是数字');
    end;
      

  8.   

    try
      if  strtofloat(edit1.text)<>0 then ;//此处if ... then ..不作任何处理
    except
       showmessage('不是数字');
    或::::
      逐位判断ord(copy(edit1.text,i,1))的ASC码值是否在数字范围内