Microsoft Visual Basic 2010
CHAPTER SIX
Loop Structures
6
Chapter 6: Loop Structures 2
Objectives
►Add a MenuStrip object►Use the InputBox function►Display data using the ListBox object►Understand the use of counters and
accumulators►Understand the use of compound operators
6
Chapter 6: Loop Structures 3
Objectives
►Repeat a process using a For…Next loop►Repeat a process using a Do loop►Avoid infinite loops►Prime a loop►Validate data
6
Chapter 6: Loop Structures 4
Objectives
►Create a nested loop►Select the best type of loop►Debug using DataTips at breakpoints►Publish a finished application using ClickOnce
technology
6
Chapter 6: Loop Structures 5
Introduction
►A fundamental process in a computer program is to repeat a series of instructions either while a condition is true (or not true) or until a condition is true (or not true)
►The process of repeating a set of instructions while a condition is true or until a condition is true is called looping• Another term for looping is iteration
6
Chapter 6: Loop Structures 6
MenuStrip Object
►A menu bar is a strip across the top of a window that contains one or more menu names
►A menu is a group of commands, or items, presented in a list
6
Chapter 6: Loop Structures 7
MenuStrip Object
►With a Windows Form object open in the Visual Studio window, scroll in the Toolbox until the Menus & Toolbars category is visible. If the category is not open, click the expand icon (right-pointing triangle) next to the Menus & Toolbars category name. Drag the MenuStrip .NET component from the Menus & Toolbars category in the Toolbox to the Windows Form object
►Release the mouse button►With the MenuStrip object selected, scroll in the
Properties window until the (Name) property is visible. Change the MenuStrip object name to mnuHighwayRadarCheckpoint
6
Chapter 6: Loop Structures 8
MenuStrip Object
►Click the Type Here box on the menu bar. Type &File to identify the File menu, and then press the ENTER key
►Click File in the MenuStrip object to select it, scroll in the Properties window to the (Name) property, and then change the name to mnuFile
►To add a menu item to the File menu, click the Type Here box below the File menu name. Type &Clear and then press ENTER to create a new menu item named Clear with C as the hot key
►On the File menu, click Clear to select it, scroll in the Properties window until the (Name) property is visible, and then change the name to mnuClearItem
6
Chapter 6: Loop Structures 9
MenuStrip Object
6
Chapter 6: Loop Structures 10
Event Handlers for Menu Items
►In Design view, double-click the Exit menu item to open the code editing window
►Using IntelliSense, enter the Close procedure call to close the window and terminate the application
6
Chapter 6: Loop Structures 11
Standard Items for a Menu
►Visual Basic 2010 contains an Action Tag that allows you to create a full standard menu bar commonly provided in Windows programs
►Action tags provide a way for you to specify a set of actions, called smart actions, for an object as you design a form
►With a new Windows Form object open, drag the MenuStrip .NET component onto the Windows Form object. Click the Action Tag on the MenuStrip object
►Click Insert Standard Items on the MenuStrip Tasks menu►Click File on the menu bar to view the individual menu
items and their associated icons on the File menu
6
Chapter 6: Loop Structures 12
Standard Items for a Menu
6
Chapter 6: Loop Structures 13
InputBox Function
►The InputBox function displays a dialog box that consists of a message asking for input, an input area, a title, an OK button, and a Cancel button
►When the user enters the text and clicks the OK button, the InputBox function returns this text as a string
►If the user clicks the Cancel button, the function returns a null string ("")
6
Chapter 6: Loop Structures 14
InputBox Object Default Value
►The InputBox object can be assigned a default value
6
Chapter 6: Loop Structures 15
InputBox Object for Highway Radar Checkpoint Application
6
Chapter 6: Loop Structures 16
Displaying Data Using the ListBox Object
►Drag the ListBox object from the Toolbox to the Windows Form object where you want to place the ListBox object. When the pointer is in the correct location, release the left mouse button
►With the ListBox object selected, scroll in the Properties window to the (Name) property. Name the ListBox object lstRadarSpeed
6
Chapter 6: Loop Structures 17
Displaying Data Using the ListBox Object
6
Chapter 6: Loop Structures 18
Adding Items During Design
►Assume the lstStores ListBox object already has been placed and named on the Windows Form object. Select the ListBox object on the Windows Form object and then click the Items property in the Properties window
►Click the ellipsis button in the right column of the Items property
►Click in the String Collection Editor window. Type the following items to represent popular retail stores, pressing ENTER at the end of each line:Abercrombie & FitchAeropostaleAmerican EagleExpressHollister
►Click the OK button
6
Chapter 6: Loop Structures 19
Adding Items During Design
6
Chapter 6: Loop Structures 20
SelectedItem Property
6
Chapter 6: Loop Structures 21
Accumulators, Counters, and Compound Operators
►A variable that contains an accumulated value such as the total of all the speeds is called an accumulator
►A variable that always is incremented by a constant value is called a counter• How many vehicle speeds the user has
entered
6
Chapter 6: Loop Structures 22
Accumulators, Counters, and Compound Operators
►A compound operator allows you to add, subtract, multiply, divide, use modulus or exponents, or concatenate strings, storing the result in the same variable
6
Chapter 6: Loop Structures 23
Accumulators, Counters, and Compound Operators
6
Chapter 6: Loop Structures 24
Accumulators, Counters, and Compound Operators
6
Chapter 6: Loop Structures 25
Using Loops to Perform Repetitive Tasks
►In the Highway Radar Checkpoint application, the user enters up to 10 vehicle speeds using the InputBox function
►The repetitive process of entering 10 vehicle speeds can be coded within a loop to simplify the task with fewer lines of code
►Each repetition of the loop is called an iteration
6
Chapter 6: Loop Structures 26
Repeating a Process Using the For…Next Loop
►You can use a For...Next loop when a section of code is to be executed an exact number of times
6
Chapter 6: Loop Structures 27
Repeating a Process Using the For…Next Loop
6
Chapter 6: Loop Structures 28
Step Value in a For…Next Loop
►A Step value is the value in a For...Next loop that is added to or subtracted from the beginning value on each iteration of the loop• Default step value is 1• Can be positive or negative, contain decumals,
or include variables and mathematical expressions
6
Chapter 6: Loop Structures 29
Entering the For…Next Loop Code
6
Chapter 6: Loop Structures 30
Repeating a Process Using a Do Loop
►In a Do loop, the body of the loop is executed while or until a condition is true or false
►The Do While loop executes as long as the condition is true
►The Do Until loop executes until the condition becomes true
►A top-controlled loop is tested before the loop is entered• Body might not be executed
►Bottom-controlled loops test the condition at the bottom of the loop, so the body of a bottom-controlled loop is executed at least once• Body executes at least once
6
Chapter 6: Loop Structures 31
Top-Controlled Do While Loops
►A top-controlled Do While loop begins with the keywords Do While. Next, the condition is specified
►The body of the loop contains the instructions that are executed as long as the condition is true
►A loop that does not end is called an infinite loop
6
Chapter 6: Loop Structures 32
Top-Controlled Do While Loops
6
Chapter 6: Loop Structures 33
Entering a Do Loop Using IntelliSense
►In the code editing window, enter the intScore variable declaration and then press the ENTER key. Type Do While, a space, and then an IntelliSense list is displayed. Type ints to highlight intScore in the list
►Type < 5 and then press the ENTER key.►Type intS to highlight the intScore variable.
Complete the statement by typing += 1 and then pressing the ENTER key. Press the DELETE key to delete the blank line
6
Chapter 6: Loop Structures 34
Entering a Do Loop Using IntelliSense
6
Chapter 6: Loop Structures 35
Bottom-Controlled Do While Loop
►A bottom-controlled loop works the same way as the top-controlled Do While loop
►The body of the loop is executed before the condition is checked the first time, guaranteeing at least one iteration of a loop will be completed
6
Chapter 6: Loop Structures 36
Bottom-Controlled Do While Loop
6
Chapter 6: Loop Structures 37
Do Until Loops
6
Chapter 6: Loop Structures 38
User Input Loops
►Do loops often are written to end the loop when a certain value is entered by the user, or the user performs a certain action such as clicking the Cancel button in an input box
6
Chapter 6: Loop Structures 39
Avoiding Infinite Loops
►An infinite loop is a loop that never ends
6
Chapter 6: Loop Structures 40
Priming the Loop
►Starting a loop with a preset value in the variable(s) tested in the condition is called priming the loop
6
Chapter 6: Loop Structures 41
Validating Data
6
Chapter 6: Loop Structures 42
Creating a Nested Loop
►Any loop can be placed within another loop under the following conditions: • Interior loops must be completely contained
inside the outer loop• Must have a different control variable
6
Chapter 6: Loop Structures 43
Selecting the Best Loop
►Use a Do loop if the number of repetitions is unknown and is based on a condition changing; a For...Next loop is best if the exact number of repetitions is fixed
►If a loop condition must be tested before the body of the loop is executed, use a top-controlled Do While or Do Until loop. If the instructions within a loop must be executed one time regardless of the status of a condition, use a bottom-controlled Do While or Do Until loop
►Use the keyword While if you want to continue execution of the loop while the condition is true. Use the keyword Until if you want to continue execution until the condition is true
6
Chapter 6: Loop Structures 44
Using a DataTip with Breakpoints
►Resolving defects in code is called debugging►A good way to collect information is to pause the
execution of the code where a possible error could occur• Breakpoints are stop points placed in the
code to tell the Visual Studio 2010 debugger where and when to pause the execution of the application
►While in break mode, you can examine the values in all variables that are within the scope of execution through the use of DataTips
6
Chapter 6: Loop Structures 45
Using a DataTip with Breakpoints
►With the program open in the code editing window, right-click line 47, which contains the code where you want to set a breakpoint, and then point to Breakpoint on the shortcut menu
►Click Insert Breakpoint on the submenu►To run and test the program with the breakpoint,
click the Start Debugging button on the Standard toolbar
►Click the Enter Speed button. Type 75 as the speed of the first vehicle
►Click the OK button in the input box
6
Chapter 6: Loop Structures 46
Using a DataTip with Breakpoints
►Point to the variable decVehicleSpeed on line 47►You can view the value in any other variable
within execution scope by pointing to that variable. To illustrate, point to the variable decTotalOfAllSpeeds on line 47
►Continue the program by clicking the Continue button on the Standard toolbar. Notice that the Continue button is the same as the Start Debugging button
►Point to the decTotalOfAllSpeeds variable
6
Chapter 6: Loop Structures 47
Using a DataTip with Breakpoints
6
Chapter 6: Loop Structures 48
Using a DataTip with Breakpoints
►To remove a breakpoint, right-click the statement containing the breakpoint, and then point to Breakpoint on the shortcut menu
►Click Delete Breakpoint on the Breakpoint submenu
6
Chapter 6: Loop Structures 49
Publishing an Application with ClickOnce Deployment
►After an application is completely debugged and working properly, you can deploy the project
►Deploying a project means placing an executable version of the program on your hard disk, on a Web server, or on a network server
►When programming using Visual Basic 2010, you can create a deployed program by using ClickOnce Deployment
►The deployed version of the program you create can be installed and executed on any computer that has the .NET framework installed
6
Chapter 6: Loop Structures 50
Publishing an Application with ClickOnce Deployment
►With the program open, click Build on the menu bar
►Click Publish Radar on the Build menu►Change the default location from publish\ to a file
location. To publish to a USB drive, type the drive letter. In this example, enter E: for a USB drive
►Click the Next button. If necessary, click the From a CD-ROM or DVD-ROM radio button
►Click the Next button. If necessary, click the The application will not check for updates radio button
6
Chapter 6: Loop Structures 51
Publishing an Application with ClickOnce Deployment
►Click the Next button►Click the Finish button►To view the finished result, minimize the Visual Studio
window, and then double-click Computer on the Windows 7 Start menu. Double-click the USB drive icon to view the published installation folder
►To install the application, double-click the setup file►After installation, the program will run. To run the installed
application again, click the Start button on the Windows taskbar. Point to All Programs, click Radar on the All Programs menu, and then click Radar on the Radar submenu
6
Chapter 6: Loop Structures 52
Publishing an Application with ClickOnce Deployment
6
Chapter 6: Loop Structures 53
Program Design
6
Chapter 6: Loop Structures 54
Program Design
6
Chapter 6: Loop Structures 55
Event Planning Document
6
Chapter 6: Loop Structures 56
Summary
►Add a MenuStrip object►Use the InputBox function►Display data using the ListBox object►Understand the use of counters and
accumulators►Understand the use of compound operators
6
Chapter 6: Loop Structures 57
Summary
►Repeat a process using a For…Next loop►Repeat a process using a Do loop►Avoid infinite loops►Prime a loop►Validate data
6
Chapter 6: Loop Structures 58
Summary
►Create a nested loop►Select the best type of loop►Debug using DataTips at breakpoints►Publish a finished application using ClickOnce
technology
Microsoft Visual Basic 2010
CHAPTER SIX COMPLETE
Loop Structures