Expand|Select|Wrap|Line Numbers
- Public Class Form1
- Sub CalculateNetPay()
- Dim gross As Decimal
- Dim fica As Decimal
- Dim netpay As Decimal
- Dim tax As Decimal
- gross = CalcGross(CDec(Me.rateTextBox.Text), CDec(Me.hoursTextBox.Text))
- grossTextBox.Text = gross.ToString
- tax = calctaxes(gross)
- Me.taxTextBox.Text = tax.ToString
- fica = calcfica(gross)
- Me.ficaTextBox.Text = fica.ToString
- netpay = gross - tax - fica
- netTextBox.Text = netpay.ToString
- End Sub
- Function CalcGross(ByVal rate As Decimal, ByVal hours As Decimal) As Decimal
- Dim Pay As Decimal
- Dim OT As Decimal
- If hours <= 40 Then
- Pay = rate * hours
- OT = 0
- Else
- Pay = rate * 40
- OT = (hours - 40) * rate * 1.5
- End If
- Return (Pay + OT)
- End Function
- Function calctaxes(ByVal locGross As Decimal) As Decimal
- Dim taxes As Decimal
- If singleButton.Checked Then
- Call singleclick(taxes)
- End If
- If marriedButton.Checked Then
- Call marriedclick(taxes)
- End If
- Return locGross * taxes
- End Function
- Private Function singleclick(ByVal locGross As Decimal) As Decimal
- Dim gross As Decimal
- Dim taxes As Decimal
- gross = CalcGross(CDec(Me.rateTextBox.Text), CDec(Me.hoursTextBox.Text))
- If 0D < gross >= 51D = True Then
- taxes = 0D
- ElseIf 51D < gross >= 552D Then
- taxes = 0.15D
- ElseIf 552D < gross >= 1196D Then
- taxes = 0.28D
- ElseIf 1196D < gross >= 2662D Then
- taxes = 0.32D
- ElseIf 2662D < gross >= 5750D Then
- taxes = 0.36D
- ElseIf gross >= 5750D Then
- taxes = 0.396D
- End If
- Return taxes
- End Function
- Private Function marriedclick(ByVal locGross As Decimal) As Decimal
- Dim gross As Decimal
- Dim taxes As Decimal
- gross = CalcGross(CDec(Me.rateTextBox.Text), CDec(Me.hoursTextBox.Text))
- If 0 < gross >= 124.0 = True Then
- taxes = 0.0
- ElseIf 124.0 < gross >= 960.0 Then
- taxes = 0.15
- ElseIf 960.0 < gross >= 2023.0 Then
- taxes = 0.28
- ElseIf 2023.0 < gross >= 3292.0 Then
- taxes = 0.31
- ElseIf 3292.01 < gross >= 5809.0 Then
- taxes = 0.36
- ElseIf gross >= 5809.0 Then
- taxes = 0.396
- End If
- Return taxes
- End Function
- Function calcfica(ByVal locGross As Decimal) As Decimal
- Return locGross * 0.0765
- End Function
- Private Sub CalcButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles calcButton.Click, marriedButton.Click, singleButton.Click
- Call CalculateNetPay()
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- End Sub
- Private Sub singleButton_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles singleButton.CheckedChanged
- End Sub
- Private Sub marriedButton_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles marriedButton.CheckedChanged
- End Sub
- Private Sub hoursTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hoursTextBox.TextChanged
- End Sub
- Private Sub rateTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rateTextBox.TextChanged
- End Sub
- Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click
- End Sub
- Private Sub taxTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles taxTextBox.TextChanged
- End Sub
- End Class