另外,完全可以控制用户的输入,保证其输入edit的全是数字以下例子保证在Edit1中只能输入数字,且长度不大于8procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin {if (length(Edit1.Text) =0) and (ord(Key)=48) then begin Key:=chr(0); exit; end; } if ord(Key)=8 then begin exit; end;if (Edit1.SelLength = 8) and ((ord(Key)>=48) and (ord(Key)<=57) or (ord(Key)=8) or (ord(Key)=36) or (ord(Key)=35) or (ord(Key)=38) or (ord(Key)=40) or (ord(Key)=37) or (ord(Key)=39)) then begin exit; end;if ((length(Edit1.Text)<8)) and ((ord(Key)>=48) and (ord(Key)<=57) or (ord(Key)=8) or (ord(Key)=36) or (ord(Key)=35) or (ord(Key)=38) or (ord(Key)=40) or (ord(Key)=37) or (ord(Key)=39)) then exit else Key:=chr(0);end;
没有那么复杂! try strtoint(edit1.text);//10进制 strtoint('$'+edit1.text);//16进制execpt showmessage('not integer'); end ;//判断是否是整形
begin
{if (length(Edit1.Text) =0) and (ord(Key)=48) then begin
Key:=chr(0);
exit;
end; }
if ord(Key)=8 then begin
exit;
end;if (Edit1.SelLength = 8)
and ((ord(Key)>=48) and (ord(Key)<=57) or (ord(Key)=8) or (ord(Key)=36) or (ord(Key)=35) or (ord(Key)=38) or (ord(Key)=40) or (ord(Key)=37) or (ord(Key)=39)) then
begin
exit;
end;if ((length(Edit1.Text)<8))
and ((ord(Key)>=48) and (ord(Key)<=57) or (ord(Key)=8) or (ord(Key)=36) or (ord(Key)=35) or (ord(Key)=38) or (ord(Key)=40) or (ord(Key)=37) or (ord(Key)=39)) then
exit
else Key:=chr(0);end;
try
strtoint(edit1.text);//10进制
strtoint('$'+edit1.text);//16进制execpt
showmessage('not integer');
end ;//判断是否是整形
你说的在什么事件里写? OnKeyPress ?
你好帅!我爱死你了。!