Delphi 限制Edit输入 多个例子
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [ '.',#8]) then key:=#0; //只能输入小数点
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [ ' 0'..'9',#8]) then key:=#0; //只能输入数字
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [ '.', '0'..'9',#8]) then key:=#0; //只能输入小数点和数字
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not ((ord(key)> 128) or (key=#8)) then
//只能输入汉字
begin
key:=#0;
end;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not ((ord(key)> 128) or (Key in ['0'..'9','A'..'Z','a'..'z',#8]) or
(key=#8)) then //只能输入汉字 数字 大小写字母
begin
key:=#0;
end;
end;
━━━━━━━━━━━━━━━━━━━━━━━━━━
只能输入汉字,而不能输入数字或其他字符
━━━━━━━━━━━━━━━━━━━━━━━━━━
在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 是空格,你可以查找下数字1\2\3是什么值
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;
━━━━━━━━━━━━━━━━━━━━━━━━━━
Delphi 限制Edit输入只能为数字或字母
procedure TDBConnFrm.editKeyPress(Sender: TObject;
var Key: Char);
begin
//中能输入 '0 '.. '9 '或 'A '.. 'Z 'OR 'a '.. 'z
'和退格
if not (Key in ['0'..'9','A'..'Z','a'..'z','.',#8]) then
begin
Key := #0;
MessageBeep(1);
end
//下以面限制只能输入一个小数点
else if
(Pos( '. ',edit.Text) <> 0) and (Key = '. ') then
begin
Key :=
#0;
MessageBeep(1);
end;
end;
━━━━━━━━━━━━━━━━━━━━━━━━━━
如果要限制编辑框只接收字母(不管大小写)输入,程序如下:
procedure TForm1.Edit1KeyPress(Sender:
TObject; var..Key: Char);
begin
if not(key
in['a'..'Z',#8])then
begin
key:=#0;
MessageBeep(1); //Beep;
调用系统声音也行!
end;
end;
Delphi 限制Edit输入 多个例子的更多相关文章
- Delphi回调函数的使用-例子
Delphi回调函数的使用-例子 功能大体描述:Form1中有一个Edit和一个Button,当点击BUTTON时弹出FORM2,FORM2中也有一个EDIT和一个BUTTON,当点击FORM2中的B ...
- [源码]Delphi 5KB无输入表下载者
[源码]Delphi 5KB无输入表下载者源码 PROGRAM Fun; type DWORD = LongWord; THandle = LongWord; BOOL = LongBool; LPC ...
- WTL自定义控件:edit输入响应
自定义的edit控件,获取edit输入响应的消息: 头文件部分: BEGIN_MSG_MAP(CCheckEditEx) MESSAGE_HANDLER(WM_CHAR, OnChar) END_MS ...
- Delphi的Edit控件中只能输入数字且只能输入一个小数点
使用这种功能必须使用 OnKeyPress 事件,该事件是在窗体中获得键盘输入的焦点,并且在用户按键时发生.OnKeyPress 事件中有个重要参数:Key.Key 参数为Char 型,它能够获得用户 ...
- 用Delphi模拟键盘输入
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎.对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制.有时,对于繁杂的,或重复性的操作,我们能否通过编制程序来代替手工输入, ...
- 远程控制篇:用Delphi模拟键盘输入/鼠标点击
模拟键盘我们用Keybd_event这个api函数,模拟鼠标按键用mouse_event函数. Keybd_event函数能触发一个按键事件,也就是会产生一个WM_KEYDOWN或WM_KEYUP消息 ...
- Delphi 拦截输入法输入结果
{ 拦截输入法输入的字符串.向编辑框中输入中文查看效果. Delphi XE7 } unit Unit1; interface uses Winapi.Windows, Winapi.Messages ...
- delphi directui 做界面的一个例子
现在很多CS系统或者软件界面都做的非常好看,比如:QQ皮肤,迅雷下载,360杀毒界面等.这些都是运用的流行的DIRECTUI 技术,基本上有的资料都是基于C++的,很少有同仁将C++下的DIRECT ...
- delphi 10.2 ----简单的递归函数例子求和
unit Unit10; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, Syste ...
随机推荐
- sqlachemy 查询当日数据,
Tokens.query.filter(Tokens.user_id == user_id, db.cast(Tokens.create_time, db.DATE) == db.cast(curre ...
- PEP8 python规范神器
如需转载,请注明出处:小婷儿的博客:https://www.cnblogs.com/xxtalhr/p/10645992.html 一.Jupyter notebook 篇 Jupyter noteb ...
- Linux死锁检测-Lockdep
关键词:LockDep.spinlock.mutex. lockdep是内核提供协助发现死锁问题的功能. 本文首先介绍何为lockdep,然后如何在内核使能lockdep,并简单分析内核lockdep ...
- PIL、Pillow安装使用方法
PIL(Python Imaging Library)是Python常用的图像处理库,而Pillow是PIL的一个友好Fork,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显 ...
- Vue+element-ui 重置组件样式的写法
两种方式实现element-ui组件的样式 方案1:重置的公共组件样式的写法如下 然后在main.js中引入 import '@/assets/css/element.css' 方案2:每个.vu ...
- JAVA生成一个二维数组,使中间元素不与相邻的9个元素相等,并限制每一个元素的个数
JAVA生成一个二维数组,使中间元素不与相邻的9个元素相等,并限制每一个元素的个数 示例如下 至少需要九个元素:"A","B","C",&q ...
- Elastic 今日在纽交所上市,股价最高暴涨122%。
10 月 6 日,Elastic 正式在纽约证券交易所上市,股票代码为"ESTC".开盘之后股价直线拉升,最高点涨幅达122%,截止到收盘涨幅回落到94%,意味着上市第一天估值接近 ...
- 从 0 到 1 实现 React 系列 —— 4.setState优化和ref的实现
看源码一个痛处是会陷进理不顺主干的困局中,本系列文章在实现一个 (x)react 的同时理顺 React 框架的主干内容(JSX/虚拟DOM/组件/生命周期/diff算法/setState/ref/. ...
- Jenkins-job之间依赖关系配置
使用场景: 想要在某APP打新包之后,立即执行自动化测试的job来验证该新包. 比如Job A 执行完执行Job B ,如下图所示,如何建立依赖呢? 1.配置上游依赖 构建触发器-配置如下信息: 选择 ...
- yosay
$ npm install yosay const yosay = require('yosay'); console.log(yosay('Hello, and welcome to my fant ...