chapter 06

59
Microsoft Visual Basic 2010 CHAPTER SIX Loop Structures

Upload: llmeade

Post on 12-Jun-2015

514 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 06

Microsoft Visual Basic 2010

CHAPTER SIX

Loop Structures

Page 2: Chapter 06

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

Page 3: Chapter 06

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

Page 4: Chapter 06

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

Page 5: Chapter 06

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

Page 6: Chapter 06

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

Page 7: Chapter 06

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

Page 8: Chapter 06

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

Page 9: Chapter 06

6

Chapter 6: Loop Structures 9

MenuStrip Object

Page 10: Chapter 06

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

Page 11: Chapter 06

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

Page 12: Chapter 06

6

Chapter 6: Loop Structures 12

Standard Items for a Menu

Page 13: Chapter 06

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 ("")

Page 14: Chapter 06

6

Chapter 6: Loop Structures 14

InputBox Object Default Value

►The InputBox object can be assigned a default value

Page 15: Chapter 06

6

Chapter 6: Loop Structures 15

InputBox Object for Highway Radar Checkpoint Application

Page 16: Chapter 06

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

Page 17: Chapter 06

6

Chapter 6: Loop Structures 17

Displaying Data Using the ListBox Object

Page 18: Chapter 06

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

Page 19: Chapter 06

6

Chapter 6: Loop Structures 19

Adding Items During Design

Page 20: Chapter 06

6

Chapter 6: Loop Structures 20

SelectedItem Property

Page 21: Chapter 06

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

Page 22: Chapter 06

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

Page 23: Chapter 06

6

Chapter 6: Loop Structures 23

Accumulators, Counters, and Compound Operators

Page 24: Chapter 06

6

Chapter 6: Loop Structures 24

Accumulators, Counters, and Compound Operators

Page 25: Chapter 06

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

Page 26: Chapter 06

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

Page 27: Chapter 06

6

Chapter 6: Loop Structures 27

Repeating a Process Using the For…Next Loop

Page 28: Chapter 06

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

Page 29: Chapter 06

6

Chapter 6: Loop Structures 29

Entering the For…Next Loop Code

Page 30: Chapter 06

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

Page 31: Chapter 06

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

Page 32: Chapter 06

6

Chapter 6: Loop Structures 32

Top-Controlled Do While Loops

Page 33: Chapter 06

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

Page 34: Chapter 06

6

Chapter 6: Loop Structures 34

Entering a Do Loop Using IntelliSense

Page 35: Chapter 06

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

Page 36: Chapter 06

6

Chapter 6: Loop Structures 36

Bottom-Controlled Do While Loop

Page 37: Chapter 06

6

Chapter 6: Loop Structures 37

Do Until Loops

Page 38: Chapter 06

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

Page 39: Chapter 06

6

Chapter 6: Loop Structures 39

Avoiding Infinite Loops

►An infinite loop is a loop that never ends

Page 40: Chapter 06

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

Page 41: Chapter 06

6

Chapter 6: Loop Structures 41

Validating Data

Page 42: Chapter 06

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

Page 43: Chapter 06

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

Page 44: Chapter 06

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

Page 45: Chapter 06

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

Page 46: Chapter 06

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

Page 47: Chapter 06

6

Chapter 6: Loop Structures 47

Using a DataTip with Breakpoints

Page 48: Chapter 06

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

Page 49: Chapter 06

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

Page 50: Chapter 06

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

Page 51: Chapter 06

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

Page 52: Chapter 06

6

Chapter 6: Loop Structures 52

Publishing an Application with ClickOnce Deployment

Page 53: Chapter 06

6

Chapter 6: Loop Structures 53

Program Design

Page 54: Chapter 06

6

Chapter 6: Loop Structures 54

Program Design

Page 55: Chapter 06

6

Chapter 6: Loop Structures 55

Event Planning Document

Page 56: Chapter 06

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

Page 57: Chapter 06

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

Page 58: Chapter 06

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

Page 59: Chapter 06

Microsoft Visual Basic 2010

CHAPTER SIX COMPLETE

Loop Structures