Se Digitar Numero no Edit Retornar Um ShowMessage.

Delphi

14/01/2005

Boa Noite negocio é o seguinte galera

[Utilizo Delphi6 e Banco de Dados Interbase]

Tenho um form de convenios e neste form tenho um edit onde no evento
OnKeyDow do edit tenho a seguinte linha:

procedure TForm3.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
dm.IBTConvenios.Locate(´Cod_Convenio´,Edit1.Text,[loPartialKey, loCaseInsensitive]);
end;

Pois então esse comando locate acima quando entro no form de convenios e no edit digito o codigo do convenio e logo apos dou um ENTER aparece todos os dados do convenio isto ai ta legal.

Mas na verdade o que eu preciso é do comando que se eu digitar uma letra e não um número dentro do edit o sistema me retorna com um Showmessage dizendo (´Favor Digitar Só Numeros´); Esse comando tem que ser no Evento OnKeyUp ou OnKeyDow do Edit.

Obrigado


Spalenza

Spalenza

Curtidas 0

Respostas

Beppe

Beppe

14/01/2005

Eu não entendi este ´tem que ser no Evento OnKeyUp ou OnKeyDow´. Porque o OnKeyPress resolve.

Coloque isto neste evento:
if not (Key in [´0´..´9´, 9]) then ShowMessage(...)



GOSTEI 0
Marcelo_mileris

Marcelo_mileris

14/01/2005

Beppe está certo mas se vc ao invés de mostrar uma mensagem quando ele digitar uma letra faça com que ele não consiga digitar nada assim:

if not (key in[´a´..´z´,´A´..´Z´,8]) then
begin
   Key:=0;
end;

Quando ele digitar uma letra não vai acontecer nada.



GOSTEI 0
Beppe

Beppe

14/01/2005

Obrigado pela correção, marcelo. Também não estava certo se backspace era #8 ou 9.

T+


GOSTEI 0
POSTAR