ajuda para conversão das teclas númericas
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:
Agradeço desde já qualquer ajuda...
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
Curtidas 0
Respostas
Cláudio Cardoso
18/02/2014
amigo, troca seu código para o OnKeyPress que vai funcionar do jeito que você quer.
GOSTEI 0