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

zeroonnet

[VB.Net 2005] Calculadora

3 mensagens neste tópico

Boas epa consegui fazer uma calculadora e segue-se o code e de seguida o que quero fazer +:

Public Class Form1
    Dim conta As Double
    Dim tipo As Char

    Private Sub btnSair_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSair.Click
        End
    End Sub

    Private Sub btnApagar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnApagar.Click
        conta = Nothing
        tipo = Nothing
        lista.Items.Clear()
        txtTexto.Clear()
    End Sub

    Sub calcular()
        If tipo <> Nothing Then
            Select Case tipo
                Case "*"
                    conta = conta * txtTexto.Text
                Case "/"
                    conta = conta / txtTexto.Text
                Case "+"
                    conta = conta + txtTexto.Text
                Case "-"
                    conta = conta - txtTexto.Text
            End Select
        Else
            conta = txtTexto.Text
        End If
    End Sub

    Sub adds()
        lista.Items.Add(txtTexto.Text)
        lista.Items.Add(tipo)
        txtTexto.Clear()
        txtTexto.Focus()
    End Sub

    Private Sub btnDividir_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDividir.Click
        calcular()
        tipo = "/"
        adds()
    End Sub

    Private Sub btnIgual_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnIgual.Click
        calcular()
        lista.Items.Add(txtTexto.Text)
        lista.Items.Add("_____________")
        lista.Items.Add(conta)
        lista.Items.Add("")
        lista.Items.Add("")
        txtTexto.Clear()
        conta = Nothing
        tipo = Nothing
        txtTexto.Focus()
    End Sub

    Private Sub btnMais_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnMais.Click
        calcular()
        tipo = "+"
        adds()
    End Sub

    Private Sub btnMenos_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnMenos.Click
        calcular()
        tipo = "-"
        adds()
    End Sub

    Private Sub btnVezes_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVezes.Click
        calcular()
        tipo = "*"
        adds()
    End Sub

End Class

Queria que a list começa-se de baixo para cima e fizesse autoscroll para baixo ou seja acompanha-se a conta... se alguem poder ajudar agradecia xD

Fiquem Bem!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pode ate existir maneira mais facil mas se exprimentares gravar todos os dados q tens na lista para um array dos apagas a lista toda, depois adicionas o ultimo resultado a lista e dps adicionas as restantes que guardaste na array.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebi bem a tua dúvida porque não estou a ver o que realmente é essa lista, mas tenho uma sugestão. As variaives conta e tipo não têm necessidade de alguma de serem globais à classe... podem ser internas à função Calculate() e no caso do tipo, passas como argumento a essa função.

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