Click Event Procedures

This is what I have so far for this progam. The application calculates a members monthly dues. I need to code each checkbox's click event procedure so that it adds the charge or subtracts the charge from the total when the check box is selected/deselected. Please help!!

Private golf As Integer

Private racquetball As Integer

Private tennis As Integer

Private Sub uiGolfCheckBox_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles uiGolfCheckBox.Click

If Me.uiGolfCheckBox.Checked = True Then

golf = 25

Else

golf = 0

End If

End Sub

Private Sub uiRacquetballCheckBox_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles uiRacquetballCheckBox.Click

If Me.uiRacquetballCheckBox.Checked = True Then

racquetball = 20

Else

racquetball = 0

End If

End Sub

Private Sub uiTennisCheckBox_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles uiTennisCheckBox.Click

If Me.uiTennisCheckBox.Checked = True Then

tennis = 30

Else

tennis = 0

End If

End Sub

Private Sub uiCalcButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles uiCalcButton.Click

Me.uiAdditionalLabel.Text = golf + tennis + racquetball

Me.uiTotalLabel.Text = Val(Me.uiBasicTextBox.Text) + Val(Me.uiAdditionalLabel.Text)

Me.uiAdditionalLabel.Text = Format(Me.uiAdditionalLabel.Text, "currency")

Me.uiTotalLabel.Text = Format(Me.uiTotalLabel.Text, "currency")

Me.uiBasicTextBox.Focus()

End Sub

Private Sub uiIdTotalLabel_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) _

Handles uiIdTotalLabel.TextChanged, uiTennisCheckBox.CheckedChanged, _

uiRacquetballCheckBox.CheckedChanged, uiGolfCheckBox.CheckedChanged, uiBasicTextBox.TextChanged

Me.uiTotalLabel.Text = ""




Answer this question

Click Event Procedures

  • DRHY

    Hi Severcool,

    Seems like you're overthinking this. You can simplify it by adding a single function to recalculate the total and update the label, then call the function from each CheckBox  CheckChanged event (you should use this instead of the Click event since a user could change it via the keyboard instead of the mouse).

    Try this:

    Private golf As Integer

    Private racquetball As Integer

    Private tennis As Integer

    Private Sub GolfCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GolfCheckBox.CheckedChanged

        If Me.GolfCheckBox.Checked = True Then

            golf = 25

        Else

            golf = 0

        End If

        recalculate()

    End Sub

    Private Sub RacquetBallCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RacquetBallCheckBox.CheckedChanged

        If Me.RacquetBallCheckBox.Checked = True Then

            racquetball = 20

        Else

            racquetball = 0

        End If

        recalculate()

    End Sub

    Private Sub TennisCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TennisCheckBox.CheckedChanged

        If Me.TennisCheckBox.Checked = True Then

            tennis = 30

        Else

            tennis = 0

        End If

        recalculate()

    End Sub

    Private Sub recalculate()

        Dim total As Integer

        total = golf + racquetball + tennis

        Me.uiTotalLabel.Text = Format(CStr(total), "currency")

    End Sub

    Hope this helps,

    Steve Hoag

    Visual Basic Express



  • miki lior

    Thank you so much!!! I can't believe it was that easy.

    Thanks again.



  • Click Event Procedures