2016-01-23 31 views
0

計算器在我添加多個數字時工作,但當我減去,乘或除多個數字時它不起作用。我不確定我應該爲這些操作工作做什麼編碼。即使我改變這一行從按鈕的程序代碼(total1=total1 + Val(txtAnswer.Text)) to (total1=total1 - Val(txtAnswer.Text)),它仍然無法正常工作使用VB.Net減法,乘,除計算器上的多個數字2010

Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click    'Add Button 
    Operation = "+" 
    txtDisplay.Text = txtDisplay.Text & btnAdd.Text 
    txtAnswer.Text = txtAnswer.Text & btnAdd.Text 
    total1 = total1 + Val(txtAnswer.Text) 
    txtAnswer.Clear() 
End Sub 

Private Sub btnMinus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMinus.Click 'Minus Button 
    Operation = "-" 
    txtDisplay.Text = txtDisplay.Text & btnMinus.Text 
    txtAnswer.Text = txtAnswer.Text & btnMinus.Text 
    total1 = total1 + Val(txtAnswer.Text) 
    txtAnswer.Clear() 
End Sub 

Private Sub btnMulti_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMulti.Click 'Multiply Button 
    Operation = "x" 
    txtDisplay.Text = txtDisplay.Text & btnMulti.Text 
    txtAnswer.Text = txtAnswer.Text & btnMulti.Text 
    total1 = total1 + Val(txtAnswer.Text) 
    txtAnswer.Clear() 
End Sub 

Private Sub btnDiv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDiv.Click 'Divide Button 
    Operation = "/" 
    txtDisplay.Text = txtDisplay.Text & btnDiv.Text 
    txtAnswer.Text = txtAnswer.Text & btnDiv.Text 
    total1 = total1 + Val(txtAnswer.Text) 
    txtAnswer.Clear() 
End Sub 

Private Sub btnEqu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEqu.Click 
    Select Case Operation 
     Case "+" 
      total2 = total1 + Val(txtAnswer.Text) 
      txtAnswer.Text = total2 
      total1 = 0 
     Case "-" 
      total2 = total1 - Val(txtAnswer.Text) 
      txtAnswer.Text = total2 
      total1 = 0 
     Case "x" 
      total2 = total1 * Val(txtAnswer.Text) 
      txtAnswer.Text = total2 
      total1 = 0 
     Case "/" 
      total2 = total1/Val(txtAnswer.Text) 
      txtAnswer.Text = total2 
      total1 = 0 
    End Select 
End Sub 

回答

0

嘗試改變VAL爲CDbl()轉換值翻倍(浮點)數字。 也利用VARIABLES接收值,只有在這之後,把它們放入文本框。

類似:

Dim x as double = 0 
Dim y as double = 0 
Dim z as double = 0 

' Convert string to Double number 
Z = cdbl(total1)/cdbl(txtanswer.txt) 
Y = z *2 
x = (y/z) 

TxtAnswer.text = X.tostring 
TxtAnswer.text = Z.tostring 

請看下圖:

Dim Total1 as double = 0 


    Select Case Operation 
     Case "+" 
     total2 = total1 + cdbl(txtAnswer.Text) 
     txtAnswer.Text = total2.Tostring 
     total1 = 0 
     Case "-" 
     total2 = total1 - cdbl(txtAnswer.Text) 
     txtAnswer.Text = total2.Tostring 
     total1 = 0 
     Case "x" 
     total2 = total1 * cdbl(txtAnswer.Text) 
     txtAnswer.Text = total2.Tostring 
     total1 = 0 
     Case "/" 
     total2 = total1/cdbl(txtAnswer.Text) 
     txtAnswer.Text = total2.Tostring 
     total1 = 0 
    End Select