这很简单呀,怎么了?看代码: procedure TForm1.Edit1Change(Sender: TObject); var mychar:pchar; begin mychar:= pchar(copy(edit1.text,edit1.selstart-1,1)); if not (mychar[0] in ['0','1','2','3']) then begin edit1.Text :=copy(edit1.text,0,length(edit1.text)-1); edit1.SelStart :=length(edit1.text); end; end;
上面的代码只让edit接受0,1,2,3的输入,你可以根据自己的要求来作相应的变化,呵呵~~
在Edit的OnKeyPress事件里写: begin if Key not in [0..9] then Key := #0 end;
在Edit的OnKeyPress事件里写: begin if not (Key in ['0'..'9']) then Key := #0; end;
begin if (not (Key in ['0'..'9'])) and (Key <> #8) then Key := #0 end;
procedure TfrmFind.edtFromNoKeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['0'..'9']) and not (Key = #8) then begin Key := #0; Beep; end; end;
在Edit的OnKeyPress事件里写: begin if not (Key in [#8,'0'..'9']) then Key := #0; end;
if not ( (chr(Key) in ['0'..'9']) or (key=VK_BACK) ) then 你的语句;
if (not (Key in ['0'..'9'])) and (Key <> #8) then Key := #0
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin //只允许输入数字 if Not (Key in ['0'..'9',#8,#13,#46]) then Key := #0; end;
procedure TForm1.Edit1Change(Sender: TObject);
var
mychar:pchar;
begin
mychar:= pchar(copy(edit1.text,edit1.selstart-1,1));
if not (mychar[0] in ['0','1','2','3']) then
begin
edit1.Text :=copy(edit1.text,0,length(edit1.text)-1);
edit1.SelStart :=length(edit1.text);
end;
end;
begin
if Key not in [0..9] then
Key := #0
end;
begin
if not (Key in ['0'..'9']) then
Key := #0;
end;
if (not (Key in ['0'..'9'])) and (Key <> #8) then
Key := #0
end;
begin
if not (Key in ['0'..'9']) and not (Key = #8) then begin
Key := #0;
Beep;
end;
end;
begin
if not (Key in [#8,'0'..'9']) then Key := #0;
end;
begin
//只允许输入数字
if Not (Key in ['0'..'9',#8,#13,#46]) then
Key := #0;
end;