Как заставить TEdit не пикать при нажатии недопустимых клавиш?

Previous  Top  Next

    
 

 

Перехватите событие KeyPress и установите key = #0 для недопустимых клавиш.

Code:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if ((UpCase(Key) < 'A') or (UpCase(Key) > 'Z')) then Key := #0;

end;

 

 

©Drkb::00532

Взято из http://forum.sources.ru

 

 

 


 

Code:

// Either disable the Beep in the OnKeyPress handler:

 

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

  if key = #13 then // #13 = Return

begin

    key := #0;

    // Code...

end;

end;

 

// Or in the OnKeyDown-Handler:

 

procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;

  Shift: TShiftState);

var

  Mgs: TMsg;

begin

  if Key = VK_RETURN then

    PeekMessage(Mgs, 0, WM_CHAR, WM_CHAR, PM_REMOVE);

end;

 

©Drkb::00981

Взято с сайта: http://www.swissdelphicenter.ch