delphi裡面控制Edit只能輸入數字

2022-05-09 01:33:11 字數 2288 閱讀 7811

如何在delphi裡面控制edit只能輸入數字

━━━━━━━━━━━━━━━━━━━━━━━━━━

if not (key in ['0'..'9',#8]) then key := #0;

只能輸入漢字,而不能輸入數字或其他字元

━━━━━━━━━━━━━━━━━━━━━━━━━━

在edit的onkeypress事件中

procedure tform1.edit1keypress(sender: tobject; var key: char);

begin

if (ord(key)<127) or (ord(edit1.text[1])>127) then

key:=#0;

end;

要使一文字框中只可輸入數字,而且當輸入的數字錯誤時還可以通過backspace鍵來修改.

━━━━━━━━━━━━━━━━━━━━━━━━━━

由於backspace的ascii值是8,所以像以下這樣即可

if (key<>#46) and ((key < #48) or (key > #57)) and (key <> #8) then

//如果輸入不是數字或小數點(#46代表小數點)

begin

key:=#0; //取消輸入的內容(#0代表空值)

showmessage('輸入錯誤!請輸入數字!'); //發出提示資訊

end;

方法二:

if not (key in ['0'..'9',#13,#8 ,#46]) then

key := #0;

這樣就可以了

只能輸入數字,而不能輸入其他字元

━━━━━━━━━━━━━━━━━━━━━━━━━━

edit 屬性maxlength 設定2;

在edit的onkeypress裡

procedure tmainform.editkeypress(sender:tobject;var key: char );

var

uflag: integer;

begin

uflag:=tedit(sender).tag;

if (not (key in ['1'..'9'])) and (not (key=#8)) then key:=#0;

end;

方法二:

edit的maxlength設定為2;

在edit的onkeypress事件內

procedure ttbdlform.edit1keypress(sender: tobject; var key: char);

begin

if key <> #9 then// #9 是空格,你可以查詢下數字1\2\3是什麼值

showmessage('請輸入數字')

end;

只能輸入數字和小數點

━━━━━━━━━━━━━━━━━━━━━━━━━━

procedure tform1.edit1keypress(sender: tobject; var key: char);

begin

if not (key in ['0'..'9','.',#8,#32]) then

key:= #0;

end;

end.

但如果你想只輸入數字而且有格式限制 那麼你最好還是用第三方控制項`

方法二:

可以在keypress裡面加上如下**,可以輸入數字,並且可以使用退格刪除數字,可以使用回車

procedure tform1.edit1keypress(sender: tobject; var key: char);

begin

case key of

'0'..'9', #8, #13, #27, '.' : ;

else

begin

messagebox(handle, '請輸入數字', pchar('輸入錯誤'), mb_ok + mb_iconinformation);

key := #0;

end;

end;

end;

procedure tform1.edit1keypress(sender: tobject; var key: char);

begin

if not (key in ['0'..'9', #8, #13]) then

begin

key := #0;

showmessage('只能輸入數字');

end;

end;

讓 Edit 只接受數字《轉》

方法1 proceduretform1.edit1keypress sender tobject varkey char begin ifnot keyin 0 9 then key chr 0 end 方法2 proceduretform1.edit1keypress sender tobject...

Delphi 7下Edit控制項的氣泡提示

在windows xp以及以上版本,基本控制項edit都有乙個好看的氣泡提示框,可惜delphi 7還不支援這種效果,但是因為edit是基本控制項,只要在xp及以上版本,傳送氣泡顯示訊息,也就可以讓其顯示氣泡提示。msdn介紹editballoontip結構體如下 12 3456 typedef s...

Delphi 流程控制

程式流程控制 1 條件分之 if.else var i integer begin if i 0 then begin do 不能給 end 沒有結束 if.else都不能加 s else if i 0 then begin do endelse begin do 兩個語句以上前面的語句必須加 do...