如何判断Edit控件中输入的字符为数字!
在只要求输入数字的Edit中,避免字符的输入!!!
procedure TForm1.CustNoEditKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ( chr(ord(key)) < '0' ) or ( chr(ord(key)) > '9' ) then
begin
messagedlg('请输入0-9直接的数字!', mtError, [mbCancel], 0);
form1.CustNoEdit.Text := '';
form1.CompEdit.Text := '';
end;
end;
如果直接用 key < '0' 会报错,因为keyDown中的key为Word型(而在KeyPress中就可以,因为KeyPress中的key为char型的)。所以这里要转换一下:ord(key)求出key的AscII序数,然后用chr(ord(key))转为char,最后和 '0' 比较。
不知道还有没有更好的办法!!!请多多赐教!!!
本文介绍了一种方法,用于确保Delphi中Edit控件只接受数字输入,通过使用KeyDown事件并检查ASCII值来阻止非数字字符的录入。
539

被折叠的 条评论
为什么被折叠?



