[Lesson 9] << [CONTENTS] >> [Lesson 11]
In this lesson, you will learn how to use the Select Case control structure in VB2012 to control the program flow. The Select Case control structure is slightly different from the If….ElseIf control structure .The difference is that the Select Case control structure basically only make a decision on one expression or dimension (for example the examination grade) while the If …ElseIf statement control structure may evaluate only one expression, each If….ElseIf statement may also compute entirely different dimensions. Select Case is preferred when there exist multiple conditions as using If…Then..ElseIf statements will become too messy.
10.1 The Select Case Structure
The syntax of the Select Case control structure in Visual Basic 2012 is as follows:
Select Case test expressionCase expression list 1 Block of one or more statements Case expression list 2 Block of one or more Statements Case expression list 3 . Case Else Block of one or more Statements End Select
10.2 The usage of Select Case is shown in the following examples
Example 10.1
' Examination Grades Dim grade As String Private Sub Compute_Click( ) grade=txtgrade.Text Select Case grade Case "A" Label1.Text="High Distinction" Case "A-" Label1.Text="Distinction" Case "B" Label1.Text="Credit" Case "C" Label1.Text="Pass" Case Else Label1.Text="Fail" End Select
Example 10.2
In this example, you can use the keyword Is together with the comparison operators
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click'Examination MarksDim mark As Single mark = mrk.Text Select Case mark Case Is >= 85 Label1.Text= "Excellence" Case Is >= 70 Label2.Text= "Good" Case Is >= 60 Label3.Text = "Above Average" Case Is >= 50 Label4.Text= "Average" Case Else Label5.Text = "Need to work harder" End Select End Sub
Example 10.3
Example 10.2 can be rewritten as follows:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Examination Marks Dim mark As Single mark = Textbox1.Text Select Case mark Case 0 to 49 Label1.Text = "Need to work harder" Case 50 to 59 Label1.Text = "Average" s Case 60 to 69 Label1.Text= "Above Average" Case 70 to 84 Label1.Text = "Good" Case 85 to 100 Label1.Text= "Excellence" Case Else Label1.Text= "Wrong entry, please reenter the mark" End Select End Sub
Example 10.4
Grades in high school are usually presented with a single capital letter such as A, B, C, D or E. The grades can be computed as follow:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Examination Marks Dim mark As Single mark = TextBox1.Text Select Case mark Case 0 To 49 Label1.Text = "E" Case 50 To 59 Label1.Text = "D" Case 60 To 69 Label1.Text = "C" Case 70 To 79 Label1.Text = "B" Case 80 To 100 Label1.Text = "A" Case Else Label1.Text = "Error, please reenter the mark" End Select End Sub
The output of Example 10.4
[Lesson 9] << [CONTENTS] >> [Lesson 11]