Fórum ajuda para conversão das teclas númericas #470415

18/02/2014

0

Olá pessoal!

Eu utilizo um sistema de pesquisa onde tenho meu DBGrid e o campo abaixo dele para Pesquisa, um edit.

Se o cursor estiver focado no DBGrid e o usuário digitar qualquer coisa, o cursor foca o edit de pesquisa automaticamente, passando o valor que ele digitou.

O meu problema é o teclado numérico. Quando o usuário vai digitar o código de um produto, por exemplo, normalmente ele irá utilizar o teclado numérico e não os números que ficam na parte superior do teclado.

Pois bem, quando o cursor esta focado no DBGrid e o usuário digita um número, pelo teclado numérico, por exemplo o número 1, no campo da consulta aparece a letra "A" e não o número "1", mas quando é usado os números da parte superior do teclado, funciona perfeitamente. Isso só acontece com o teclado numérico.

Eu utilizo o seguinte código no FormOnKeyDown:
  if (Char(key) in ['a'..'z','A'..'Z','0'..'9']) and (not (ActiveControl is TEdit)) then
  begin
    pnlPesquisar.Visible := True;
    edtPesquisar.Clear;
    edtPesquisar.SetFocus;
    edtPesquisar.Text     := Char(key); <<< O problema esta aqui.
    edtPesquisar.SelStart := 1;
  end;


Agradeço desde já qualquer ajuda...
Vagner Almeida

Vagner Almeida

Responder

Posts

24/02/2014

Cláudio Cardoso

amigo, troca seu código para o OnKeyPress que vai funcionar do jeito que você quer.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar