beste,
ik zou in .net een rekenmachine willen ontwerpen, identiek aan de "windows-calculator".
Dit is op zich niet echt een groot probleem:
Private Sub Bereken(ByVal operator)
operand1 = CInt(txtResultaat.Text)
If operator = "+" Then
resultaat = operand2 + operand1
ElseIf operator = "-" Then
resultaat = operand2 - operand1
End If
txtResultaat.Text = resultaat
End Sub
Private Sub initialization()
operand1 = 0
operand2 = 0
resultaat = "0"
operator = ""
txtResultaat.Text = txtResultaat.Focus
txtResultaat.Text = ""
End Sub
Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
operand1 = 0
operand2 = 0
resultaat = "0"
operator = ""
txtResultaat.Text = txtResultaat.Focus
txtResultaat.Text = ""
End Sub
Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
txtResultaat.AppendText(btn1.Text)
End Sub
Private Sub btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn2.Click
txtResultaat.AppendText(btn2.Text)
End Sub
Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click
txtResultaat.AppendText(btn3.Text)
End Sub
Private Sub bn4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn4.Click
txtResultaat.AppendText(btn4.Text)
End Sub
Private Sub btn5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn5.Click
txtResultaat.AppendText(btn5.Text)
End Sub
Private Sub btn6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn6.Click
txtResultaat.AppendText(btn6.Text)
End Sub
Private Sub btn7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn7.Click
txtResultaat.AppendText(btn7.Text)
End Sub
Private Sub btn8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn8.Click
txtResultaat.AppendText(btn8.Text)
End Sub
Private Sub btn9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn9.Click
txtResultaat.AppendText(btn9.Text)
End Sub
Private Sub btn0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn0.Click
txtResultaat.AppendText(btn0.Text)
End Sub
Private Sub btnPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPlus.Click
operand1 = CInt(txtResultaat.Text)
operand2 = operand1
operator = btnPlus.Text
txtResultaat.Text = ""
End Sub
Private Sub btnMin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMin.Click
operand1 = CInt(txtResultaat.Text)
operand2 = operand1
operator = btnMin.Text
txtResultaat.Text = ""
End Sub
Private Sub btnIsGelijk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIsGelijk.Click
Bereken(operator)
End Sub
Private Sub txtResultaat_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtResultaat.TextChanged
End Sub
End Class
of via het rar bestand: Rekenmachine.rar
nu is het probleem dat deze calculator perfect werkt bij bewerkingen met "2" getallen dus (2+2 = 4, 3-6 = -3, ....) maar wanneer ik het volgende ingeef bijvoorbeeld: 4 + 4 + 4 zal hij dus enkel de laatste 2 getallen optellen en de uitkomst 8 geven.
Na verschillende uren zoeken is het mij nog niet gelukt dit op te lossen, iemand suggesties?
edit: link
ik zou in .net een rekenmachine willen ontwerpen, identiek aan de "windows-calculator".
Dit is op zich niet echt een groot probleem:
Private Sub Bereken(ByVal operator)
operand1 = CInt(txtResultaat.Text)
If operator = "+" Then
resultaat = operand2 + operand1
ElseIf operator = "-" Then
resultaat = operand2 - operand1
End If
txtResultaat.Text = resultaat
End Sub
Private Sub initialization()
operand1 = 0
operand2 = 0
resultaat = "0"
operator = ""
txtResultaat.Text = txtResultaat.Focus
txtResultaat.Text = ""
End Sub
Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
operand1 = 0
operand2 = 0
resultaat = "0"
operator = ""
txtResultaat.Text = txtResultaat.Focus
txtResultaat.Text = ""
End Sub
Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
txtResultaat.AppendText(btn1.Text)
End Sub
Private Sub btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn2.Click
txtResultaat.AppendText(btn2.Text)
End Sub
Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click
txtResultaat.AppendText(btn3.Text)
End Sub
Private Sub bn4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn4.Click
txtResultaat.AppendText(btn4.Text)
End Sub
Private Sub btn5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn5.Click
txtResultaat.AppendText(btn5.Text)
End Sub
Private Sub btn6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn6.Click
txtResultaat.AppendText(btn6.Text)
End Sub
Private Sub btn7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn7.Click
txtResultaat.AppendText(btn7.Text)
End Sub
Private Sub btn8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn8.Click
txtResultaat.AppendText(btn8.Text)
End Sub
Private Sub btn9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn9.Click
txtResultaat.AppendText(btn9.Text)
End Sub
Private Sub btn0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn0.Click
txtResultaat.AppendText(btn0.Text)
End Sub
Private Sub btnPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPlus.Click
operand1 = CInt(txtResultaat.Text)
operand2 = operand1
operator = btnPlus.Text
txtResultaat.Text = ""
End Sub
Private Sub btnMin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMin.Click
operand1 = CInt(txtResultaat.Text)
operand2 = operand1
operator = btnMin.Text
txtResultaat.Text = ""
End Sub
Private Sub btnIsGelijk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIsGelijk.Click
Bereken(operator)
End Sub
Private Sub txtResultaat_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtResultaat.TextChanged
End Sub
End Class
of via het rar bestand: Rekenmachine.rar
nu is het probleem dat deze calculator perfect werkt bij bewerkingen met "2" getallen dus (2+2 = 4, 3-6 = -3, ....) maar wanneer ik het volgende ingeef bijvoorbeeld: 4 + 4 + 4 zal hij dus enkel de laatste 2 getallen optellen en de uitkomst 8 geven.
Na verschillende uren zoeken is het mij nog niet gelukt dit op te lossen, iemand suggesties?
edit: link
Laatst bewerkt: