如何判断Edit1输入的是不是纯数字(串)?
解决方案 »
- 从串口读数据的问题,用了第三方控件,
- 如何限制EDIT控件格式符合日期格式
- 用FastReport做自定义报表现实吗?
- Delphi开发的软件在双操作系统下运行不正常,急急急!
- 关于ado问题
- 如何在adotable中输入小数位超过4位的数值
- 见鬼了,我TMyStringGrid中创建一个TEdit对象出问题
- code explorer里面的输入格式是overwrite如何使它变为normal??
- 关于SHELLAPI的问题
- :) 今天是星期一,有很多高手开始上班了。这个捆饶我很久的问题可能可以得到解决了!快请进!!!:D
- 如何在Calendar控件的单元格中写入数据?
- intraweb发布在IIS中发布为DLL,并且将Files与Templates拷贝到dll目录下,为什么模板内容不显示,其他正常呢?
function IsDigital(Value: string): boolean;
var
i, j: integer;
str: char;
begin
result := true;
Value := trim(Value);
j := Length(Value);
if j = 0 then
begin
result := false;
exit;
end;
for i := 1 to j do
begin
str := Value[i];
if not (str in ['0'..'9']) then
begin
result := false;
exit;
end;
end;
end;调用:
if IsDigital(edit1.text) then
showmessage('全是数字')
esle
showmessage('还全是数字');
key=#0
ShowMessage('全是数字')
else
showmessage('还全是数字');
ShowMessage('全是数字')
else
showmessage('不全是数字');
if ((StrToFloatDef(Edit1.text, 65535) = 65535) and (Edit1.text <> '65535')) then
showmessage('no number')
else
showmessage('Is Number');或者
var
FNumber: real;
try
FNumber := StrToFloat(edit1.text);
except
on error do
showmessage('not number');
end;
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
function IsDigital(Value: string): boolean;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}
function TForm1.IsDigital(Value: string): boolean;
var
i, j: integer;
str: char;
begin
result := true;
Value := trim(Value);
j := Length(Value);
if j = 0 then
begin
result := false;
exit;
end;
for i := 1 to j do
begin
str := Value[i];
if not (str in ['0'..'9']) then
begin
result := false;
exit;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if IsDigital(edit1.text) then
ShowMessage('全是数字')
else
showmessage('不全是数字');
end;end.
if not (key in ['0'..'9',#8,#13]) then key:=#0;end;
TryStrToFloat
...
在KeyPress事件中写上就行了
if not(Key in ['0'..'9',#8]) then Key := #0;