calculadora com teclado numérico

13/11/2015

0

Olá estou com dificuldades em fazer uma calculadora especifica para calcular valor de um capacitor.
Essa calculadora contém 03 textbox e um teclado de buttons com numeros ao clicar no button seria para colocar no textbox que estivesse selecionado o numero correspondente ao button que apertei, mas meu codigo não deu certo.

[img]http://arquivo.devmedia.com.br/forum/imagem/463575-20151113-133756.jpg[/img]

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If TextBox1.Text = 0 Then
TextBox1.Text += "1"
ElseIf TextBox2.Text = 0 Then
TextBox2.Text += "1"
ElseIf TextBox3.Text = 0 Then
TextBox3.Text += "1"
End If
End Sub

Coloquei este codigo em todos os buttons de 0 ao 9 mas não deu certo.
Anderson Mariano

Anderson Mariano

Responder

Post mais votado

14/11/2015

Segue o que propus para lhe auxiliar

Variável global para auxiliar no controle do textBox no evento Leave, e no Evento click do botão adicionar o valor ao último textbox com foco

Public Class Form1
    Dim ControleTextBox As Integer = 0

    Private Sub txtVim_Leave(sender As Object, e As EventArgs) Handles txtVim.Leave
        ControleTextBox = 1
    End Sub

    Private Sub txtA_Leave(sender As Object, e As EventArgs) Handles txtA.Leave
        ControleTextBox = 2
    End Sub

    Private Sub txtVout_Leave(sender As Object, e As EventArgs) Handles txtVout.Leave
        ControleTextBox = 3
    End Sub

    Private Sub btnNum1_Click(sender As Object, e As EventArgs) Handles btnNum1.Click
        Select Case ControleTextBox
            Case 1
                txtVim.Text += "1"
            Case 2
                txtA.Text += "1"
            Case 3
                txtVout.Text += "1"
        End Select
    End Sub
End Class

Lucas Ramos

Lucas Ramos
Responder

Mais Posts

13/11/2015

Aluisio Cavalcante

Aonde está a operação que deve ser feita?
Responder

13/11/2015

Anderson Mariano

A operação é feita no botão enter e o valor aparece em um picturebox.
Só preciso fazer com que insira os numeros no textbox quando clicado nele, quando clicar em outro textbox consiga inserir os números nele.
Responder

13/11/2015

Aluisio Cavalcante

Esse código que vc fez já faz a operação?
Responder

13/11/2015

Anderson Mariano

Esse código que vc fez já faz a operação?

Amigo o que preciso é fazer com que quando clica no botão referente aos números ele preencha o textbox que está em foco.
De resto já está funcionando.
Responder

14/11/2015

Lucas Ramos

Quando você aperta o botão o TextBox perde o foco e não tem como saber qual lugar preencher sem controle, faça o seguinte, crie uma variável global
int ControleTextBox;


No evento Exit de cada textbox atribua um valor a ela, e quando clicar no botão só verificar o valor dessa variável para saber qual deve alimentar.
Responder

14/11/2015

Anderson Mariano

Como assim Lucas não entendi o que vc quis dizer, estou trabalhando com vb.net.
Responder

14/11/2015

Anderson Mariano

Como assim Lucas não entendi o que vc quis dizer, estou trabalhando com vb.net.


Blz consegui fazer a variável global e agora está quase funcionando, só que o primeiro numero que clico tem que ser do teclado dai meus botões de numeros funcionam se não, não funcionam.
O que posso fazer agora.
Responder

14/11/2015

Anderson Mariano

Segue o que propus para lhe auxiliar

Variável global para auxiliar no controle do textBox no evento Leave, e no Evento click do botão adicionar o valor ao último textbox com foco

Public Class Form1
    Dim ControleTextBox As Integer = 0

    Private Sub txtVim_Leave(sender As Object, e As EventArgs) Handles txtVim.Leave
        ControleTextBox = 1
    End Sub

    Private Sub txtA_Leave(sender As Object, e As EventArgs) Handles txtA.Leave
        ControleTextBox = 2
    End Sub

    Private Sub txtVout_Leave(sender As Object, e As EventArgs) Handles txtVout.Leave
        ControleTextBox = 3
    End Sub

    Private Sub btnNum1_Click(sender As Object, e As EventArgs) Handles btnNum1.Click
        Select Case ControleTextBox
            Case 1
                txtVim.Text += "1"
            Case 2
                txtA.Text += "1"
            Case 3
                txtVout.Text += "1"
        End Select
    End Sub
End Class



Era exatamente o que eu procurava deu certo. Parabéns Lucas me ajudou e muito em.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar