限制TEdit控件只能输入数字,小数点和负号
来源:互联网 发布:微信推广淘宝店铺 编辑:程序博客网 时间:2024/05/14 08:57
执行这些代码,Edit1只能输入数字、小数点和负号,负号和小数点只能输入一个,负号必须在最前,粘贴的数字必须完全正确,不能以限制Ctrl_V的使用为前提。
type TForm1 = class(TForm) Edit1: TEdit; procedure FormCreate(Sender: TObject); private Edit1OldProc: TWndMethod; procedure Edit1NewProc(var Message: TMessage); public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}uses Clipbrd;procedure TForm1.FormCreate(Sender: TObject);begin Edit1OldProc := Edit1.WindowProc; Edit1.WindowProc := Edit1NewProc;end;procedure TForm1.Edit1NewProc(var Message: TMessage);var s: string; v: double;begin case Message.Msg of WM_PASTE: begin s := Clipboard.astext; s := copy(edit1.Text, 0, edit1.SelStart) + s + copy(edit1.Text, edit1.SelStart + edit1.SelLength, length(edit1.Text)); if trystrtofloat(s, v) then Edit1OldProc(Message) else ShowMessage('只允许输入数字'); end; WM_CHAR: begin if (TWMCHAR(Message).CharCode = 45) then if (Pos('-', Edit1.Text) = 0) and (Edit1.SelStart = 0) then Edit1OldProc(Message); if (TWMCHAR(Message).CharCode = 46) then if (Pos('.', Edit1.Text) = 0) then Edit1OldProc(Message); if TWMCHAR(Message).CharCode in [48..57, 8, 3] then Edit1OldProc(Message); if (TWMCHAR(Message).CharCode = 22) then Edit1OldProc(Message); end; else Edit1OldProc(Message); end;end;
阅读全文
0 0
- 限制TEdit控件只能输入数字,小数点和负号
- 限制只能输入数字、负号、小数点。支持退格删除
- MFC控件edit封装,只能输入数字、负号、小数点
- 在EditBox中只能输入数字包括小数点和负号
- 限制input输入类型:数字、小数点和负号
- 限制input输入类型:数字、小数点和负号
- 限制TEdit 内只能输入数字
- TEdit中限制只能输入"."或数字
- 限制文本框只能输入数字和小数点
- 限制文本框只能输入数字和小数点
- 限制文本框只能输入数字和小数点
- UITextField 限制只能输入数字和小数点,只能有两位小数
- mfc现实edit控件输入限制(只能输入数字和小数点)
- MFC 如何让CEdit控件只能输入数字、正负号、小数点(浮点数)
- 输入框中只能输入数字,小数点,负号
- JS只能输入数字一个小数点可输入负号
- 限制输入框只能输入数字和小数点
- js限制输入框只能输入数字、负数和小数点
- exception org.json.JSONexception is never thrown in corresponding try block
- python学习笔记(一)
- 在二叉查找树中插入节点
- 简单理解 NP, P, NP-complete和NP-Hard
- 《Ajax基础详解》
- 限制TEdit控件只能输入数字,小数点和负号
- 【第七届蓝桥杯大赛个人赛(软件类)决赛B组】
- 最长上升子序列
- leetcode | Delete Duplicate Emails | 删除表中重复项
- 单播、多播(组播)和广播的区别
- 算法导论 矩阵链乘法
- U盘装linux系统 [U01]
- 汇编8086基础
- win 10重装