Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #59 da revista programar. Faz já o download aqui!

secua

Usar o "ponto" do teclado numérico como separador decimal

Mensagens Recomendadas

secua    0
secua

Agradeço a vossa ajuda na seguinte questão?

Uso uma DBGrid para lançamentos de dados.

De forma a agilizar o processo quero poder lançar valores numerários usando apenas o teclado numérico, e para isso, necessito que o programa aceite o uso do “ponto” no teclado numérico como separador decimal.

Quero que quando carregue no “ponto” to teclado numérico o sistema “veja” uma vírgula.

Como posso fazer isto ?

Obrigado p'la ajuda!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
secua    0
secua

Bom dia,

Claro que partilho.

Apanha o código da tecla "." e passa para ",".

Não sei se foi a maneira mais correcta mas foi a única simples e está a resultar. Desta forma, os utilizadores usam o teclado numérico, nomeadamente o ponto para separar ar casas decimais, o programa lê e transforma o mesmo em virgula.

procedure Tfrmmov.DBgridlinhasmovKeyPress(Sender: TObject; var Key: Char);
begin
   if (Key = #46) then Key := ',';

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo    223
pwseo

Podes sempre interceptar tanto a vírgula como o ponto e em vez de manualmente fazeres Key := ',', podes obter o valor DecimalSeparator de um objecto TFormatSettings.

Desta forma estarás a fazer com que o teu programa funcione de acordo com as definições locais (que podem ter o ponto ou a vírgula como separador decimal).

  • Voto 2

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.