zoukankan      html  css  js  c++  java
  • 如何在delphi里面控制Edit只能输入数字

    原文来源:http://blog.163.com/fj_lfx/blog/static/3775368320099129562048/

    2009-10-12 09:56:20|  分类: delphi|举报|字号 订阅

     
     

    如何在delphi里面控制Edit只能输入数字

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    if not (key in ['0'..'9',#8]) then key := #0;

    只能输入汉字,而不能输入数字或其他字符

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    在Edit的OnKeyPress事件中

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

    begin

    if (Ord(Key)<127) or (Ord(Edit1.Text[1])>127) then

    Key:=#0;

    end;

    要使一文本框中只可输入数字,而且当输入的数字错误时还可以通过Backspace键来修改.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    由于BackSpace的ASCII值是8,所以像以下这样即可

    if (key<>#46) and ((key < #48) or (key > #57)) and (key <> #8) then

    //如果输入不是数字或小数点(#46代表小数点)

    begin

    key:=#0; //取消输入的内容(#0代表空值)

    showmessage('输入错误!请输入数字!'); //发出提示信息

    end;

    方法二:

    if not (key in ['0'..'9',#13,#8 ,#46]) then

    key := #0;

    这样就可以了

    只能输入数字,而不能输入其他字符

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    edit 属性Maxlength 设置2;

    在edit的onkeypress里

    procedure Tmainform.editkeypress(sender:tobject;var key: char );

    var

    Uflag: integer;

    begin

    Uflag:=Tedit(sender).Tag;

    if (not (key in ['1'..'9'])) and (not (key=#8)) then key:=#0;

    end;

    方法二:

    edit的maxlength设置为2;

    在edit的onkeypress事件内

    procedure Ttbdlform.Edit1KeyPress(Sender: TObject; var Key: Char);

    begin

    if key <> #9 then// #9 是空格,你可以查找下数字123是什么值

    showmessage('请输入数字')

    end;

    只能输入数字和小数点

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

    begin

    if not (key in ['0'..'9','.',#8,#32]) then

    key:= #0;

    end;

    end.

    但如果你想只输入数字而且有格式限制 那么你最好还是用第三方控件`

    方法二:

    可以在keypress里面加上如下代码,可以输入数字,并且可以使用退格删除数字,可以使用回车

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

    begin

    case Key of

    '0'..'9', #8, #13, #27, '.' : ;

    else

    begin

    MessageBox(Handle, '请输入数字', PChar('输入错误'), MB_OK + MB_ICONINFORMATION);

    Key := #0;

    end;

    end;

    end;

  • 相关阅读:
    关于ArcGis for javascrept查询ArcGis server图层信息的方式
    Elasticsearch教程之基础概念
    C# 将日期转换成中文格式
    .Net 自定义Excel模板导出数据
    JavaScript判断浏览器类型
    简单的json传送数据
    Oracle替换临时表空间
    Python多线程循环
    crontab执行不生效-【问题篇】
    Python将MySQL表数据写入excel
  • 原文地址:https://www.cnblogs.com/lp-blogs/p/3845174.html
Copyright © 2011-2022 走看看