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

來源:互聯網
上載者:User

如何在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;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.