继续按F9,可能异常你不会。
你也可以procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#8]) then
begin
key:=#0;
end;
end;
你也可以procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#8]) then
begin
key:=#0;
end;
end;
解决方案 »
- keydown事件与keypress事件的问题
- [讨论/基本功] 参数传递的不同方式。
- 为什么ActionMainMenuBar、ActionToolBar在运行后是灰的啊????
- 请教开发的问题!!!
- ado 如何应用在多线程里面??
- 实现数据提交与预览,quickrep只在第两次按按钮出结果
- 求助,获得网页上的div元素,没有id和name该如何获取
- DELPHI MDI窗口加载网页的问题
- D5中TNMPOP3收取邮件时如何显示中文?
- 服务启动另一个程序无界面的问题。
- 我真的想学delphi.............
- 程序最小化之后怎么判断里面空件的变化,根据变化做响应的处理,help up
限制在Edit里输入整数,可以用以下代码:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#8]) then
begin
key:=#0;
end;
end;
你运行你的可执行文件就没问题了!
异常走入except必然报错。继续运行既可。
BEGIN SHOWMESSAGE(' 不准输入其他字符,请输入数字!');
KEY:=#0;ABORT;
END;
把程序该为如下:
如果不在keypress中处理.
if (Edit2.text>='0')and(Edit2.text<='99999999') then
myint:=StrToInt(Edit2.text)
else begin
Showmessage('必须输入整数');
Edit2.SetFocus;
end;
http://www.csdn.net/Expert/topic/446/446813.shtm
var
myint:integer;
E: Integer;
begin
Val(TEdit(Sender).Text, myint, E);
if E <> 0 then begin
ShowMessage('必须输入整数');
TEdit(Sender).SetFocus;
end;
end;