Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Precionar Botão


tux_boy

Pergunta

Pessoal, estou fazendo uma calculadora e queria fazer com que quando eu precionasse o botão de + do teclado, o programa executasse a procedure que criei para o botão de soma no formulário.

Só que quando preciono o botão no teclado, ele apernas escreve + no edt que utilizo como visor.

o código que eu usei foi:

procedure TForm1.btnmaisKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if Key=43 then
   btsoma;
end;

alguém pode me ajudar?

obrigado!

Editado por Micheus
Adicionado o delimitador de código [code] [/code]
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Pessoal, estou fazendo uma calculadora e queria fazer com que quando eu precionasse o botão de + do teclado, o programa executasse a procedure que criei para o botão de soma no formulário.

Só que quando preciono o botão no teclado, ele apernas escreve + no edt que utilizo como visor.

o código que eu usei foi:

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

Shift: TShiftState);

begin

if Key=43 then

btsoma;

end;

alguém pode me ajudar?

obrigado!

para saber o número da tecla apertada, coloquei no OnkeyUp do componente o seguinte código:

ShowMessage(IntToStr(Key));

Assim, você verá que a tecla + do teclado é 107.

Link para o comentário
Compartilhar em outros sites

  • 0

tux_boy, você pode começar por habilitar a propriedade KeyPreview (true) do form da sua calculadora. Isto fará com que todos os eventos resultantes do pressionamento de uma tecla, sejam enviados primeiro para o respectivo tratador de evento do form: OnKeyUp, OnKeyDown, OnKeyPress.

No evento OnKeyPress o parâmetro recebido é um caracter (ascii), já nos outros dois eventos o parâmetro é um WORD (virtual key code)

Para sua aplicação, acredito que utilizar OnKeyPress, seria uma boa opção, pois você poderia testar o código ascii diretamente (Key = '+') em um if ou em um case tipo:

case key of
  '+' : ...
  '-' : ...
  '*' : ...
  '/' : ...
end;

A título de informação fica um link para a tabela de códigos virutais Virtual Key Codes (ref. About.com)

Tem um post não muito antigo com links de calculadoras em delphi caso lhe interesse - post

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...