我想用Visual Basic編寫一個帶有預覽框的ATM程序,但是每當我在繼續按鈕之前計時預覽按鈕時,我的值「雙倍增加」。例如,如果我輸入10到交易價值箱與存款和命中預覽我得到160,但是當我然後點擊繼續我得到170.Visual Basic的ATM程序
任何想法,我可能會出錯?我知道我必須在預覽值後重置餘額,但我不知道如何。
Public Class transactionsGBox
Const SERVICE_CHARGE_DECIMAL As Decimal = 6.5
Const PIN As Integer = 9343
Dim Balance As Decimal = 150
Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click
End Sub
Private Sub RadioButton5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles topUpButton.CheckedChanged
End Sub
Private Sub transactionsGBox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Function withdraw(ByVal amount As Decimal)
Balance -= amount
Return Balance
End Function
Private Function deposit(ByRef amount As Decimal)
Balance += amount
Return Balance
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles clearButton1.Click
End Sub
Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles confirmButton.Click
If pinBox.Text = "9343" Then
transactionGroupBox.Enabled = True
previewButton.Enabled = True
proceedButton.Enabled = True
pinBox.Enabled = False
Else
MessageBox.Show("Incorrect pin, try again", "Pin Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
End Sub
Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles clearButton2.Click
End Sub
Private Sub exitButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles exitButton.Click
Me.Close()
End Sub
Private Sub previewButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles previewButton.Click
If depositButton.Checked = True Then
previewBalance.Text = deposit(transactionValueBox.Text)
Else
previewBalance.Text = withdraw(transactionValueBox.Text)
End If
End Sub
Private Sub proceedButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles proceedButton.Click
If depositButton.Checked = True Then
finalBalance.Text = deposit(transactionValueBox.Text)
Else
finalBalance.Text = withdraw(transactionValueBox.Text)
End If
End Sub
End Class