Morphine0225
23-04-2007, 15:02
Bem... Estou a construir uma calculadora em Visual Basic.. Já começei a fazer os botões, já inseri a textbox e tou a trabalhar agora nas somas, subtracções, divisões e multiplicações... Mas o meu problema está a ser a parte do código para "juntar" os números... Se alguém me poder ajudar agradeço imenso!
Abraço!
Bem se for como eu entendi deves fazer o seguinte :
Varivel de retorno = Text1 & Text2
MRKawa600
23-04-2007, 16:47
O que queres dizer com "Juntar"???
Morphine0225
23-04-2007, 16:53
Quero dizer somar, subtrair, dividir, multiplicar... Os dois valores que utilizo... Primeiro e segundo..
MRKawa600
23-04-2007, 22:40
uma das formas mais fáceis é usares um controlo não visivel (por exemplo, ou uma variável global).
Guardas o 1º valor introduzido, guardas o operador e depois é só fazer a textbox do resultado = 1º valor e em função do operador efectuares a operação com o 2º valor.
o utilizador coloca o 1º valor na textbox, ao clicar no operador guardas o operador numa variável ou controlo oculto e guardas o 1º valor também, ao colocar o 2º valor e clicar para calcular vais buscar o 1º valor, utilizas um select case para em função do operador fazer o cálculo com o 2º valor. e mostras o resultado.
Parece-me a forma mais simples de implementar sem grandes "conhecimentos"!
Cumps
Mete a limpar os dados da textbox ( textbox.clear()) sempre que carregas no botão da operação para não misturar os valores.
Ou então por 2 textbox. E até se for uma calculadora apenas com as operações simples (+; -; *;/ ) podes por a apresentar os todos resultados de todas as operações em layers, ou seja, com 1 simples click podes fazer ao mesmo tempo as 4 operaçoes. Caso contrario faz como diz o MRKawa600.
Good luck. :)
Morphine0225
24-04-2007, 22:38
Tou agora com um outro problemita... É que o utilizador na calculadora mete um valor e depois outro e n dá para meter um terceiro... :S
O código que fiz foi este:
valor1 = val(textbox1.text)
operador = "+"
textbox1.clear()
Mas agora tenho esse problema.. se alguem poder ajudar agradeço...
Ш¡zard·σf·Шαr
24-04-2007, 23:40
Fica mais fácil de entender se mostrares mais partes do código...
Morphine0225
25-04-2007, 00:25
dim valor1, valor2 as double
dim operador as string
valor1 = val(textbox1.text)
operador = "+"
textbox1.clear()
___________
Isto faz parte do botão somar...
É preciso mostrar mais o quê? cumps
Blackened
25-04-2007, 15:51
Bem eu uso C# e não muito Visual Basic, mas os principios são os mesmos, só não sei quais as funções que há numa linguagem que não existem na outra, mas anyway. Se estás a pensar em programar como deve ser, utiliza as funções de cada tipo, ou seja, se queres passar o que está numa textbox para um double fazes:
try {
double d = double.Parse(textbox.Text);
} catch(FormatException) {
//Mensagem de erro
}
Esta é a maneira mais correcta na minha modesta opinião, porque te garante que a consversão é bem realizada. Depois para fazer as operações é só:
double soma = num1 + num2;
double multi = num1 * num2;
textbox.Tex = soma.ToString();
Espero que tenha ajudado qualquer coisa. Cheers
para meteres um 3 valor no = deves de ter qualquer coisa do tipo
val2= val(textbox1.text)
if oper = "+" then textbox.text= val1 + val2
if oper = "-" then textbox.text= val1 - val2
if oper = "*" then textbox.text= val1 * val2
if oper = "/" then textbox.text= val1 / val 2
textbox1.clear
até aqui tudo bem, agora para um terceiro valor mete assim
if oper = "+" then val1 = val1+val2
if oper = "-" then val1 = val1-val2
if oper = "*" then val1= val1*val2
if oper = "/" then val1= val1 / val2
assim a variavel val1 vai assumir o valor do resultado e podes fazer o que quiseres dai.
rodmarcos
11-06-2007, 18:10
Eu tb fiz uma calculadeira. Com relatorio e tudo! lol. se kiseres, eu mando-ta...