有没有可以专门输入数字的控件?(50分)

  • 主题发起人 主题发起人 smhe
  • 开始时间 开始时间
S

smhe

Unregistered / Unconfirmed
GUEST, unregistred user!
如果要输入 形如
.23
-9.34
2.4e-3
.4E2
34.33
2344
的数字该怎么办呢?
 
Tedit 就可以.
在keypress里判断
if not (Key in ['0'..'9',e,E,#8]) then
begin
key:=#0;
messagebox(handle,"错了","错就错吧",mXXXXX);
end;
 
可是就算输入的字符都对, 也不能保证输入是一个正确的实数呀?
如 23e23.3e
 
没有办法了么???
 
再判断一下不就行了。
 
想一想在dos下面用个"readln"就能解决的问题, 现在要我自己写一大堆判断, 是不是
有点那个.... 不知道delph高效在什么地方???
 
markedit就行吧,要不对edit的onenter做叛断也行,用不着专门找控件.
 
就是不想去写判断程序呀, 难道每次要输入实数了, 就去写一堆判断么? 且不是很简单的
我不过想输入一个实数而已.....
 
我想到办法了, 哈哈
在edit.onExit里面
用strToFloat函数试一下,
然后抓异常就行了
可喜可贺....
谁有更好的办法??
没有就结束咯...








 
多人接受答案了。
 
你这种方法没错,我做的日期控件(用TEDIT)也是引用这个原理,不过调试麻烦点
 
后退
顶部