微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何验证文本框中是否只包含Delphi中的数字?

这可能是一个非常简单的问题,但我从未接触过delphi.
我有一个编辑框,可以接受角色.但在某些特殊情况下,我必须验证编辑框字符只是数字.

我们怎么能这样做?

注意:用户可以输入任何字符,但在验证时我必须验证上面的字符.

解决方法

我不明白为什么你想让用户输入一个字符,后来不允许它通过验证.

如果你真的需要阻止进入,那么为你做这个的控件比自己破解它更好.如果你的delphi版本真的很旧,那么试试JVCL组件库中的JVCL:TJvValidateEdit,例如,在所有版本的delphi中.但是,在最近的常规delphi版本(2009及更高版本)中,已经内置了几种可能的解决方案,包括TMaskEdit和TSpinEdit.

如果您真的只需要编写验证方法,那么请考虑使用正则表达式或手动编码验证函数,并将该代码与控件分开.

// Taking OP question obsessively literally,this 
// function doesn't allow negative sign,decimals,or anything
// but digits
function IsValidEntry(s:String):Boolean;
var
  n:Integer;
begin
  result := true;
  for n := 1 to Length(s) do begin
    if (s[n] < '0') or (s[n] > '9') then
    begin
       result := false;
       exit;
    end;
  end;
end;

原文地址:https://www.jb51.cc/delphi/102085.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐