procedure TForm1.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if not (char(key) in['0'..'9',#8]) then
begin
key:=word(#0);
beep;
end;
end;
这样,字母仍然可以进入 edit

解决方案 »

  1.   

    procedure TForm1.Edit3KeyDown(Sender: TObject; var Key: Word;  Shift: TShiftState);
    begin
       if not (key in ['0'..'9']) then
       key:=#0;
    end;
      

  2.   

    procedure Tfrmmain.Edit5KeyPress(Sender: TObject; var Key: Char);
    begin
      if not(key in ['0'..'9','-',#8]) then key:=#0
    end;
      

  3.   

    搞定了,应该放到
    Edit3KeyPress里面
      

  4.   

    用maskedit控件,设置EditMask属性,这个控件在additional页