只能输入数字
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var p:integer; tp:TPoint;
begin
?? if key in ['0'..'9','+','-','.'] then
?? //是否是0-9,以及是否為+、-號(hào)
????? begin
???????? if key in ['+','-'] then
??????????? begin
?????????????? p:=pos('+',Edit1.Text)+pos('-',Edit1.Text);
?????????????? if p>0 then key:=#0
?????????????? else
????????????????? begin
???????????????????? GetCaretPos(tp);
???????????????????? if tp.x>1 then key:=#0;
????????????????? end;
??????????? end
???????? else
if key='.' Then
//判斷是否為小數(shù)點(diǎn)
?????????????? begin
????????????????? p:=pos('.',Edit1.Text);
????????????????? if p>0 then key:=#0;
?????????????? end;
????? end
?? else if key>#31 then key:=#0;
end; 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
var p:integer; tp:TPoint;
begin
?? if key in ['0'..'9','+','-','.'] then
?? //是否是0-9,以及是否為+、-號(hào)
????? begin
???????? if key in ['+','-'] then
??????????? begin
?????????????? p:=pos('+',Edit1.Text)+pos('-',Edit1.Text);
?????????????? if p>0 then key:=#0
?????????????? else
????????????????? begin
???????????????????? GetCaretPos(tp);
???????????????????? if tp.x>1 then key:=#0;
????????????????? end;
??????????? end
???????? else
if key='.' Then
//判斷是否為小數(shù)點(diǎn)
?????????????? begin
????????????????? p:=pos('.',Edit1.Text);
????????????????? if p>0 then key:=#0;
?????????????? end;
????? end
?? else if key>#31 then key:=#0;
end; 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
總結(jié)
- 上一篇: delphi查找对话框
- 下一篇: (转载)【即时通讯】今天的鼻子一酸的即时