250 likes | 421 Views
CVEV 118/698 Visual Basic. Lecture 2. Prof. Mounir Mabsout Elsa Sulukdjian Walid El Asmar. Control Flow Statements. An important feature in programming languages is the ability to examine external conditions and act accordingly. VB provides three control flow (or decision) statements:
E N D
CVEV 118/698 Visual Basic Lecture 2 Prof. Mounir Mabsout Elsa Sulukdjian Walid El Asmar
Control Flow Statements • An important feature in programming languages is the ability to examine external conditions and act accordingly. • VB provides three control flow (or decision) statements: • If … Then … End If • If … Then … Else … End If (Elseif) • Select Case
If/Then Statements • Example 1: If intAnswer = 1 Then strMood = “happy” End If • Example 2: If intAnswer = 1 Then strMood = “happy” Else strMood = “sad” End If • Example 3: If intAnswer = 1 Then strMood = “happy” Elseif intAnswer = 2 Then strMood = “sad” Else strMood = “don’t care” End If
Select Case Statement • Efficient method for multi-conditional cases. • Select Case WeekDay(intDate) • Case 1 • strDayName = “Monday” • strMessage = “Have a nice week” • Case 6 • strDayName = “Saturday” • strMessage = “Have a nice weekend” • Case 7 • strDayName = “Sunday” • strMessage = “Working on Sunday!!??” • Case Else • strMessage = “Welcome back” • End Select Select Case expression Case Value_1 Statement block_1 Case Value_2 Statement block_2 … Case Value_n Statement block_n Case Else Statement block End Select
Select Case (cont’d) • The Select Case structure compares the results of one expression to several values, and if it matches one of them, the corresponding block of statement is executed. • If more than one Case value matches the expression, only the statement block associated with the first matching Case executes. • Disadvantage: The Select Case evaluates the expression before entering the Case statements, while the If/Then/Else can evaluate a different expression for each ElseIf statement.
Select Case (cont’d) • Example 2 Select Case WeekDay(intDate) Case 1, 2, 3, 4, 5 strDayType = “Workday” strMessage = “Enjoy Work” Case 6, 7 strDayType = “Holiday” strMessage = “Enjoy your weekend” Case Else strDayType = “VBday” strMessage = “Goto your assignment!” End Select
Loop Statements • Loop Statements allow to execute code repetitively. • VB provides three loop statements: • Do … Loop • For … Next • While … Wend
Do … Loop • Syntax 1: Do While condition statement block Loop • VB evaluates the condition, if it is False the block is never executed. If it is True, VB executes the statement block, re-evaluates the condition, and repeats the statement block if it is True. • Example 1: Do While dblGrade <= 80 dblGrade = dblGrade + 1 MsgBox “Work Harder!” Loop
Do … Loop (cont’d) • Syntax 2: Do statement block Loop While condition • The main difference with syntax 1 is that the statement block is executed the first time independently of the condition. The evaluation starts before the second loop. • Example 2: Do dblGrade = dblGrade + 1 MsgBox “Work Harder!” Loop While dblGrade <= 80
For … Next • The loop executes depending on a preset number of times not on a conditional statement. • It uses a variable (counter) that increases or decreases in value each time the statement is executed. • Syntax: For counter = start To end [Step increment] statements Next [counter]
For … Next (cont’d) • Example 1: For intNum = 1 to 10 intSquareNum(intNum) = intNum * intNum Next intNum • Unless specified, the incremental step of the counter (I.e. intNum) is 1 by default. • Example 2: For intNum = 10 to 1 Step -2 intSquareNum(intNum) = intNum * intNum Next intNum
While … Wend • While…Wend executes a block of statements while a condition is true. • Syntax: While condition statement block Wend • Why all this trouble? Just use the Do While Loop
Functions & Subroutines • VB code is not a monolithic listing. An application in VB is made up of small self contained segments that are “event handler”. • Difference between a function & a subroutine: • A Function executes a series of commands and returns a value. • A Subroutine can be considered a special function since it does not return anything.
Subroutines • A subroutine is a block of statements that carry out a well-defined task. Sub MyFirstSub () …… …… End Sub • All the event procedures in VB are coded as subroutines e.g.: the “click” event of a button.
Functions • A function returns a result, accordingly it must have a type: Function MyFirstFunction () As Double …… …… End Function
Arguments • Arguments are values passed to a procedure (a function or subroutine) and on which the procedure acts. • Example: Function dblCircleArea (r As Double) As Double dblCircleArea = pi * r * r End Function To call the above function: dblCArea1 = dblCircleArea (dblRadius) (where dblCArea1 & dblRadius are previously defined variables of type double)
Arguments (cont’d) • The number of arguments passed must be the same as the number of arguments defined in the function or subroutine. • Example: Function dblRectArea (a, b As Double) As Double dblRectArea = a * b End Function ‘Error will be generated in the following code: dblAreaWrong = dblRectArea(dblLength) ‘The right piece of code is: dblAreaRight = dblRectArea(dblLength,dblWidth)
Optional Arguments • You may need a function to handle in some cases one argument; in other cases two or more. • Then you need to use the “Optional argument”: Function dblRectArea (a As Double,Optional b As Double) As Double dblRectArea = a * a If IsMissing(b) Then Exit Function dblRectAtea = a * b End Function Both calls for the above function are valid: RArea1 = dblRectArea(dblLength) RArea2 = dblRectArea(dblLength,dblWidth)
Forms • A form is the “container” which includes all the “controls” that make up the user interface. • Forms have a built-in functionality that is always available without any coding from you (title bar, resize, etc.). • Properties of a form exist for you to customize its appearance. Some of these properties are: • MinButton, MaxButton • BorderStyle • ControlMenu
Forms (cont’d) Title Bar Minimize Maximize Control Menu Close
Basic Controls • Controls are another key factors in the “event-driven” programming. • VB has a multitude of controls, and many third party companies are developing more. • You can create your own control.
Frames and Option Boxes • Rectangular entity inside a form that groups one or more controls. • Frames are used for esthetics reasons and/or for proper functioning of option boxes: inside each frame, only one option box can be ticked
TextBox Properties • Multiline: set to true if you want to display correctly multiple lines. • PasswordChar: set to a character that gets displayed to hide the real characters. • ToolTipText: Yellowish text box that explains about a control. • ScrollBars: Controls the attachment of scroll bars, if the text exceeds the control dimensions. • MaxLength: Maximum number of characters contained. • TabStop: Controls the access to the control with the tab key. • Enabled: Controls the access to the control
What’s Next • Form manipulation • Menu design • Other controls