• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

joaoqalves

Calculadora

15 mensagens neste tópico

Boas, estive a fazer uma calculadora na aula (daquelas basicas: +,-,/,*)  deste genero:

txt_box1 --> numero1

txt_box2 --> numero2

e agora queria.lhe introduzir botoes para por os numeros dentro, mas como faço? tipo tenho que verificar qual das caixas está seleccionada para eu clicar no botao e aparecer na caixa que quero.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebi bem o que queres  :)

Tens duas caixas de texto certo? E agora o que queres fazer ao certo com os botões?

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Penso que o que ele quer é ter varios botoes (de 0 a 9) e depois em vez de clicar na textbox e escrever um numero pelo teclado, vai clicando nos botões até ficar o numero que ele quer. Por exemplo, quer escrever o número '123': Clica no botão 1, depois no 2 e por fim no 3. Penso que seja mais ou menos isto (corrige-me se estiver errado)

Agora para meter os valores em cada textbox, acho que tens de ver qual delas tem Focus (atributo SetFocus). Não estou a ver como fazes a verificação :/

Penso que era mais fácil fazeres tipo na calculadora do Windows, só com uma textbox. Introduzias um numero, o operador e o outro numero, carregavas no botão '=' e aparecia o resultado nessa mesma textbox.

Cumps,

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hhhmmmm, estou +/- a ver... vamos esperar que ele confirme  ;)

Agora para meter os valores em cada textbox, acho que tens de ver qual delas tem Focus (atributo SetFocus). Não estou a ver como fazes a verificação :/

Pensando assim muito rapidamente ocorrem-me algumas formas, mas a mais simples é:

Cria uma variável, depois no evento click de cada textbox colocava uma linha de código que colocava na variável algo que identifica-se a caixa de texto por exemplo o nome... depois quando se clicava num dos botões era verificado que valor estava na variavel e com base no valor da variavel era seleccionada uma das textbox.. Para isto funcionar da melhor forma possível talvez facilita-se  utilizar um control array nas textbox mas não sei se o JoaoQAlves sabe trabalhar com isso  :) mas tambem caso não saiba e queira saber nós estamos cá para isso mesmo  :P

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Penso que o que ele quer é ter varios botoes (de 0 a 9) e depois em vez de clicar na textbox e escrever um numero pelo teclado, vai clicando nos botões até ficar o numero que ele quer. Por exemplo, quer escrever o número '123': Clica no botão 1, depois no 2 e por fim no 3. Penso que seja mais ou menos isto (corrige-me se estiver errado)

Agora para meter os valores em cada textbox, acho que tens de ver qual delas tem Focus (atributo SetFocus). Não estou a ver como fazes a verificação :/

Penso que era mais fácil fazeres tipo na calculadora do Windows, só com uma textbox. Introduzias um numero, o operador e o outro numero, carregavas no botão '=' e aparecia o resultado nessa mesma textbox.

Cumps,

é isto mesmo  :) ... mas fazer a verificação é que é mais complexo  :cheesygrin: ... tipo tinnha ke kriar uma boolean para quando estivesse la o cursor saber k era na text1 ou text2 (Nao pode ser so com uma txtbox...LOL isso kria eu  ;).. mas o stor ker duas..)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

JoaoQAlves não tem nada de complexo acredita.

É assim, primeiro crias uma variável (varSelecionada) do tipo string para guardar um determinado valor para posteriormente se determinar qual das textbox esta activa, depois no evento click de cada textbox colocas algo do tipo -> varSelecionada = textx.name - e assim ficas com o nome da text box em que cliacaste guardado na variavel. Depois nos botões basta verificares que valor tem a variavel varSelecionada que neste caso será o nome de uma das textbox. Para isso fazes algo do tipo:

Se varSelecionada = text1 então

      text1.text = text1.text & commandx.caption

senão se varSelecionada = text2 então

      text2.text = text2.text & commandx.caption

Fim se

Colocas este código em todos os botões.(se utilizares control array o código ficaria mais pequeno)

Onde tenho o "x" (por exemplo -> commandx) o "x" indica o numero que estará nesse lugar. Para que isto funcione tens de colocar na propriedade de cada botão apenas um numero( no botão 1 colocas na propriedade caption o valor 1, etc..) porque se reparares esta-se a utilizar essa propriedade para adicionar os numeros nas textbox.

Mais uma coisa, quando o programa inicia como a variavel varSelecionada está vazia, se carregares num botão o programa não irá fazer nada. Para melhorar este aspecto podes iniciar logo a variavel varSelecionada no Form Load com o nome da primeira textbox, tipo -> varSelecionada = text1.name

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mt obrigado ao NuGuN e ao resto do pessoal  :confused:;) ja ta a rullar  :P ... bem amigos, so me resta dizer que qualquer coisa que possa ser util aqui estarei sempre.. para ja so domino o pascal(console) mas espero que no futuro seja pra melhor  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

JoaoQAlves, podes postar o projecto? Por acaso também gostava de fazer isso, só que atrapalho-me sempre a fazer "o ecrã" da calculadora... :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois  :confused:

Mas também deve haver isso no .NET, Um control array é tipo teres um só evento click para cada botão por exemplo, e depois existe um índice que serve para distinguir uns botões dos outros a nível do código fonte.

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

sim eu sei, mas no .NET nunca vi disso pa...;) foi por isso.. mas deve existir... facilita bues :P

cumps :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois... eu de .NET não percebo nadinha  :-[

Eu sempre que posso utilizar arrays utilizo, dá para diminuir bastante os códigos fonte e eu gosto bastante de trabalhar com isso  :cheesygrin:

Cumps

0

Partilhar esta mensagem


Link 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