Document

Microsoft Visual Basic 2005
CHAPTER 6
Loop Structures
6
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
Chapter 6: Loop Structures
2
6
Objectives
►Repeat a process using a For…Next loop
►Repeat a process using a Do loop
►Avoid infinite loops
►Prime a loop
►Validate data
Chapter 6: Loop Structures
3
6
Objectives
►Create a nested loop
►Select the best type of loop
►Debug using DataTips at breakpoints
►Publish a finished application using ClickOnce
technology
Chapter 6: Loop Structures
4
6
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
Chapter 6: Loop Structures
5
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
Chapter 6: Loop Structures
6
6
MenuStrip Object
► With a Windows Form object open in the Visual Studio
window, scroll in the Toolbox until the Menus & Toolbars
subcategory is visible. If the subcategory is not open, click
the + sign next to the Menus & Toolbars subcategory
name. Drag the MenuStrip .NET component from the
Menus & Toolbars subcategory 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
Chapter 6: Loop Structures
7
6
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 mnuFileMenu
► 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
Chapter 6: Loop Structures
8
6
MenuStrip Object
Chapter 6: Loop Structures
9
6
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
Chapter 6: Loop Structures
10
6
Standard Items for a Menu
► Visual Basic 2005 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
Chapter 6: Loop Structures
11
6
Standard Items for a Menu
Chapter 6: Loop Structures
12
6
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 ("")
Chapter 6: Loop Structures
13
6
InputBox Object Default Value
►The InputBox object can be assigned a default
value
Chapter 6: Loop Structures
14
6
InputBox Object for Highway Radar
Checkpoint Application
Chapter 6: Loop Structures
15
6
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
Chapter 6: Loop Structures
16
6
Displaying Data Using the ListBox Object
Chapter 6: Loop Structures
17
6
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 & Fitch
Aeropostale
American Eagle
Express
Hollister
► Click the OK button
Chapter 6: Loop Structures
18
6
Adding Items During Design
Chapter 6: Loop Structures
19
6
SelectedItem Property
Chapter 6: Loop Structures
20
6
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
Chapter 6: Loop Structures
21
6
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
Chapter 6: Loop Structures
22
6
Accumulators, Counters,
and Compound Operators
Chapter 6: Loop Structures
23
6
Accumulators, Counters,
and Compound Operators
Chapter 6: Loop Structures
24
6
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
Chapter 6: Loop Structures
25
6
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
►Figure 6-42
Chapter 6: Loop Structures
26
6
Repeating a Process
Using the For…Next Loop
►Figures 6-43 and 6-44
Chapter 6: Loop Structures
27
6
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
►Figure 6-45
Chapter 6: Loop Structures
28
6
Entering the For…Next Loop Code
►Figure 6-49 and 6-53
Chapter 6: Loop Structures
29
6
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
Chapter 6: Loop Structures
30
6
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
►Figure 6-56
Chapter 6: Loop Structures
31
6
Top-Controlled Do While Loops
Chapter 6: Loop Structures
32
6
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 press
CTRL+SPACEBAR to display the IntelliSense list.
Type intS to highlight intScore in the list
►Type < 5 and then press the ENTER key.
►Press CTRL+SPACEBAR to display the
IntelliSense list. 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
Chapter 6: Loop Structures
33
6
Entering a Do Loop Using IntelliSense
Chapter 6: Loop Structures
34
6
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
Chapter 6: Loop Structures
35
6
Bottom-Controlled Do While Loop
Chapter 6: Loop Structures
36
6
Do Until Loops
Chapter 6: Loop Structures
37
6
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
Chapter 6: Loop Structures
38
6
Avoiding Infinite Loops
►An infinite loop is a loop that never ends
Chapter 6: Loop Structures
39
6
Priming the Loop
►Starting a loop with a preset value in the
variable(s) tested in the condition is called
priming the loop
Chapter 6: Loop Structures
40
6
Validating Data
Chapter 6: Loop Structures
41
6
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
Chapter 6: Loop Structures
42
6
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
Chapter 6: Loop Structures
43
6
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 2005 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
Chapter 6: Loop Structures
44
6
Using a DataTip with Breakpoints
►With the program open in the code editing
window, right-click line 49, 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
Chapter 6: Loop Structures
45
6
Using a DataTip with Breakpoints
►Point to the variable decVehicleSpeed on line 49
►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 49
►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
Chapter 6: Loop Structures
46
6
Using a DataTip with Breakpoints
Chapter 6: Loop Structures
47
6
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
Chapter 6: Loop Structures
48
6
Publishing an Application
with Click Once 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 2005, 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
Chapter 6: Loop Structures
49
6
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 DVDROM radio button
►Click the Next button. If necessary, click the The
application will not check for updates radio button
Chapter 6: Loop Structures
50
6
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 the My Computer icon on
the desktop. 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, point to Radar on the All
Programs menu, and then click Radar on the Radar
submenu
Chapter 6: Loop Structures
51
6
Publishing an Application
with ClickOnce Deployment
Chapter 6: Loop Structures
52
6
Program Design
Chapter 6: Loop Structures
53
6
Program Design
Chapter 6: Loop Structures
54
6
Event Planning Document
Chapter 6: Loop Structures
55
6
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
Chapter 6: Loop Structures
56
6
Summary
►Repeat a process using a For…Next loop
►Repeat a process using a Do loop
►Avoid infinite loops
►Prime a loop
►Validate data
Chapter 6: Loop Structures
57
6
Summary
►Create a nested loop
►Select the best type of loop
►Debug using DataTips at breakpoints
►Publish a finished application using ClickOnce
technology
Chapter 6: Loop Structures
58
Microsoft Visual Basic 2005
CHAPTER 6 COMPLETE
Loop Structures