0
我使用visual basic創建一個程序,該程序記錄從抽象基類派生的小時和薪金僱員。對於我的界面,用戶將選擇小時工或薪水員工,如果每小時顯示小時和小時費率文本框。如果工資表格隱藏小時文本框並將小時費率更改爲年薪。Visual Basic單選按鈕身份驗證錯誤
我有一個循環設置如下:
For i As Integer = 0 To EmployeeList.Count - 1
Dim thisEmployee As Employee = EmployeeList(i)
Dim HourlyorAnnualrate As String = Nothing
Dim Hours As String = Nothing
If TypeOf (thisEmployee) Is HourlyEmployee Then
HourlyorAnnualrate = CType(thisEmployee, HourlyEmployee).decRate
Hours = CType(thisEmployee, HourlyEmployee).decHours
TotalHourlyRate += thisEmployee.WeeklyGrossPay()
End If
If TypeOf (thisEmployee) Is SalariesEmployee Then
HourlyorAnnualrate = CType(thisEmployee, SalariesEmployee).decSalary
TotalSalariesRate += thisEmployee.WeeklyGrossPay()
End If
我添加信息到一個文本框上buttonclick有以下幾點:
Private Sub btnPayroll_Click(sender As Object, e As EventArgs) Handles btnPayroll.Click
txtRecord.Text = "Total number of employees: " & vbTab & vbTab & EmployeeList.Count & vbCrLf & _
"Number of salaries employees: " & vbTab & SalariesEmployeeList.Count & vbCrLf & _
"Number of hourly employees: " & vbTab & vbTab & HourlyEmployeeList.Count & vbCrLf & _
"Total salaries employee weekly payroll: " & vbTab & vbTab & FormatCurrency(TotalSalariesRate) & vbCrLf & _
"Total hourly employee weekly payroll: " & vbTab & vbTab & FormatCurrency(TotalHourlyRate) & vbCrLf & _
"Total weekly payroll: " & vbTab & vbTab & FormatCurrency(TotalSalariesRate + TotalHourlyRate)
End Sub
我遇到的問題是,用戶可以選擇一名工資員工並且工作得很好,但是如果他們選擇每小時一次的員工,則會記錄weeklygrosspay並將其添加到TotalSalaries費率和TotalHourlyRate。
有沒有反正我可以防止這種情況發生?我試着在每次點擊按鈕後取消選中單選按鈕,但由於這是在循環中,我仍然會記錄不正確。
任何幫助,非常感謝!
你介意發佈處理/顯示循環設置值的表單代碼嗎? – user3510227 2014-10-08 09:09:42
是的,謝謝。它已被添加 – Bhetzie 2014-10-08 21:38:47