Travis 0 Denunciar post Postado Outubro 18, 2005 Estou montando uma calculadora para um trabalho pra faculdade... e estou com 2 duvidas. Gostaria de saber como fazer os botoes da calculadora funcionar quando precionamos os numeros no teclado, igual a calculadora do proprio windows... E como fazer para exibir em um campo editmask os numeros q a pessoa digitar. exemplo: se o usuario digira primeiro o numero '2' , e em seguida digitar '3', como faço pra exibir o numero '23' no campo editmask.... jah tentei algumas coisas... soh q num conseguii!!! :( tah meio complicadoo.. alguem ai pode me ajudar com esses dois problemas ?? qualquer duvida MSN:brunoaccastro@hotmail.com valeuz!!!!!!! http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Compartilhar este post Link para o post Compartilhar em outros sites
thalesoli 0 Denunciar post Postado Outubro 18, 2005 Bom o problema da acao quando os botões forem pressionados eu sugiro você usar ações com o shotcut apontado para o numero e o simbolo q você quiser.. e coloque a acao nos botoes tbagora a questao de aparecer no display .. eu aconselho você a não deixar o usuario editar o texto do edit.... faça com que ele seja somente leitura... e você faz assim para adicionar o numeroedit.text := edit.text + valor;espero ter ajudadofalow Compartilhar este post Link para o post Compartilhar em outros sites
bastard2003 4 Denunciar post Postado Outubro 18, 2005 vamos la... cara você poderia fazer da seguinte maneira... na propriedado do form tem o OnKeyDown você poderia pegar o codigo de cada techa numerérica (procura por - ASC II - é o codigo das teclas) e fazer da seguinte maneira: if key = #0 then //digamos que seja o zero ali begin btnZeroClick(sender); end;no exemplo acima eu testo se o botão precionado for o 0 se for, ele executa o comando do que tem no click do botão 0... pra você armazenar esse esquema ai você pode fazer da seguinte maneira... joga o valor que ta no edit pra uma variavel ai toda vez que clicar num botão tu pega essa variavel e faz ela receber ela mais o valor do botão, no caso se o cara clicac no 0 e no edt já tivec 55 ficaria: //variavel valor do tipo stringvalor:= valor + 0;edt.text := valor; qualquer coisa posta ai! PS: desculpa ter explicado assim corrido, mas é que to meio ocupado agora... se der mais tarde passo aqui de novo! Compartilhar este post Link para o post Compartilhar em outros sites
Travis 0 Denunciar post Postado Outubro 18, 2005 cara entendio q tem q ser feito para poder adicionar os numeros usando o teclado.. mas aonde q eu coloko o "if" eh dentro do botão do numero ou posso colocar em qualquer lugar do form, ou ainda criar uma função ?? o q você axa melhoR??? entao toda vez q acionar o teclado e tecla precionada estiver dentro dos IFs de teste eleezecutara o codigo q estiver no botao ?? dentro do () q ta escrito sender naopreciso colokar mais nada ou tenho q fazer alguma referencia ?? valeuz heimm.. me ajudaram pra caramba mesmo!!! obrigadoo!!!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites
bastard2003 4 Denunciar post Postado Outubro 18, 2005 fala meu guri beleza? bom vamos la.. desculpa não poder entrar MT em detalhes mas isso ai fiz meio que na corrida aqui... to meio ocupado! :D esse codigo ai tu cola ele no OnKeyDown do teu form principal.. na nas propriedades dele a propriedade KeyPreview tu passa pra True... o edit a onde vai aparecer os numeros tu passa pra ReadOnly pra não ter problemas mais tarde! heheh... axo que era isso! segue os codigos! if (key = 48) or (key = 96) then btn0Click(sender);//botão correspondente ao 0 if (key = 49) or (key = 97) then btn1Click(sender);if (key = 50) or (key = 98) then btn2Click(sender);if (key = 51) or (key = 99) then btn3Click(sender);if (key = 52) or (key = 100) then btn4Click(sender);if (key = 53) or (key = 101) then btn5Click(sender);if (key = 54) or (key = 102) then btn6Click(sender);if (key = 55) or (key = 103) then btn7Click(sender);if (key = 56) or (key = 104) then btn8Click(sender);if (key = 57) or (key = 105) then btn9Click(sender); no click do botão 0 por exemplo eu coloquei esse codigo aqui: Edit1.Text := Edit1.Text + '0'; esses ai são os codigos das teclas pela tabela ASC II se tu quiser descobrir um codigo coloca esse codigo aqui!: //na propriedade do form keypreview tu passa pra true//onkeyDown do form tu coloca esse texto ai! sendo edit1 um editEdit1.Text := Format('%d',[key]); axo que era isso... qualquer coisa posta ai... abraços! Compartilhar este post Link para o post Compartilhar em outros sites