Programming with Microsoft Visual Basic 2008 Fourth Edition

1 / 69

# Programming with Microsoft Visual Basic 2008 Fourth Edition - PowerPoint PPT Presentation

Programming with Microsoft Visual Basic 2008 Fourth Edition Chapter Four The Selection Structure Previewing the Monthly Payment Calculator Application The Monthly Payment Calculator application uses the selection structure Previewing the Monthly Payment Calculator Application (continued)

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Programming with Microsoft Visual Basic 2008 Fourth Edition' - omer

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Programming with Microsoft Visual Basic 2008 Fourth Edition

Chapter Four

The Selection Structure

Previewing the Monthly Payment Calculator Application
• The Monthly Payment Calculator application uses the selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-2: Monthly payment amount shown in the interface

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson A Objectives

After studying Lesson A, you should be able to:

• Write pseudocode for the selection structure
• Write an If...Then...Else statement
• Write code that uses comparison operators and logical operators
• Change the case of a string
• Determine the success of the TryParse method

Programming with Microsoft Visual Basic 2008, Fourth Edition

The Selection Structure
• Selection structure:
• Chooses one of two paths based on condition
• Also called a decision structure
• Example:
• If employee works over 40 hours, add overtime pay
• Condition: Expression evaluating to true or false
• Four selection structures in Visual Basic:
• If, If/Else, If/ElseIf/Else, and Case

Programming with Microsoft Visual Basic 2008, Fourth Edition

The Selection Structure (continued)

Figure 4-3: Selection structures you might use today

Programming with Microsoft Visual Basic 2008, Fourth Edition

Writing Pseudocode for If and If/Else Selection Structures
• If selection structure:
• Contains only one set of instructions
• Instructions are processed if the condition is true
• If/Else selection structure:
• Contains two sets of instructions
• True path: Instruction set following true condition
• False path: Instruction set following false condition

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-4: Examples of the If and If/Else selection structures written in pseudocode

Programming with Microsoft Visual Basic 2008, Fourth Edition

Flowcharting the If and If/Else Selection Structures
• Flowchart:
• Uses standardized symbols showing steps to be taken to accomplish a task
• Oval: Start/stop symbol
• Rectangle: Process symbol
• Parallelogram: Input/output symbol
• Diamond: Decision symbol
• Used in both selection and repetition structures

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the If and If/Else Selection Structures
• If…Then…Else statement: Usedto code If and If/Else selections structures
• Syntax:

If condition Then

statement block for true path

[Else

statement block for false path]

End If

• condition must be a Boolean expression that evaluates to True or False
• Else clause is optional

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-5: Examples of the If and If/Else selection structures drawn in flowchart form

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparison Operators
• Comparison (relational) operators:
• Used to test two items for equality or types of non-equality
• Always result in a True or False value
• Rules for comparison operators
• They do not have an order of precedence
• They are evaluated from left to right
• They are evaluated after any arithmetic operators in the expression

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparison Operators (continued)

Figure 4-8: Evaluation steps for an expression containing arithmetic and comparison operators

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using Comparison Operators—Swapping Numeric Values
• Sample application displays the lowest and highest of two numbers entered by the user

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-9: Sample run of the Lowest and Highest application

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-10: Display button’s pseudocode showing the If selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-11: Display button’s flowchart showing the If selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-12: Display button’s Click event procedure showing the If selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

• Values input by the user are stored in variables with procedure scope
• A temporary variable is used when values must be swapped
• Declared within statement block
• Block scope: Restricts use of variable to statement block in which it is declared

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-13: Illustration of the swapping concept

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using Comparison Operators—Displaying the Sum or Difference
• Sample application that displays the sum or difference of two numbers entered by the user

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-14: Sample run of the Addition and Subtraction application

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-15: Calculate button’s pseudocode showing the If/Else selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-16: Calculate button’s flowchart showing the If/Else selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-17: Calculate button’s Click event procedure showing the If/Else selection structure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators
• Logical operators:
• Used to create compound conditions
• Also called Boolean operators
• Six logical operators in Visual Basic:
• And
• Or
• Not
• AndAlso
• OrElse
• Xor

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators (continued)

Figure 4-18: Listing and examples of logical operators

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators (continued)
• Truth tables: Show how logical operators are evaluated
• Short circuit evaluation: Bypasses evaluation of condition when outcome can be determined without it
• Operators using technique: AndAlso, OrElse
• Example:
• If state = "TN" AndAlso sales > 50000D Then…
• If state is not TN, no need to evaluate sales > 50000D

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators (continued)

Figure 4-19: Truth tables for the logical operators

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators (continued)

Figure 4-19: Truth tables for the logical operators (continued)

Programming with Microsoft Visual Basic 2008, Fourth Edition

Logical Operators (continued)

Figure 4-19: Truth tables for the logical operators (continued)

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using the Truth Tables
• Scenario: Calculate a bonus for a salesperson
• Bonus condition: “A” rating and sales > \$10,000
• Appropriate operators: And, AndAlso (more efficient)
• Both conditions must be true to receive bonus
• Sample code: rating = "A" AndAlso sales > 10000
• Precedence of logical operators:
• Evaluated after any arithmetic or comparison operators in the expression

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using Logical Operators: Calculating Gross Pay
• Data validation: Verifying that input data is within expected range
• Scenario: Calculate and display employee gross pay
• Requirements for application:
• Verify hours are within range (>= 0.0 and <= 40.0)
• If data is valid, calculate and display gross pay
• If data is not valid, display error message
• Can accomplish this using AndAlso or OrElse

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Strings Containing Letters
• Scenario:
• Display “Pass” if ‘P’ is entered in txtLetter control
• Display “Fail” if ‘F’ is entered in txtLetter control
• Can use the OrElse or the AndAlso operator
• Note that ‘P’ is not the same as ‘p’
• They have different Unicode values

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Strings Containing Letters (continued)

Figure 4-23: Visual Basic code showing string comparisons in the If...Then...Else statement’s condition

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Strings Containing Letters (continued)

Figure 4-23: Visual Basic code showing string comparisons in the If...Then...Else statement’s condition (continued)

Programming with Microsoft Visual Basic 2008, Fourth Edition

Converting a String to Uppercase or Lowercase
• String comparisons are case sensitive
• CharacterCasing property:
• Three case values: Normal (default), Upper, Lower
• ToUpper method: Converts string to upper case
• ToLower method: Converts string to lower case
• Example: If strLetter.ToUpper = “p" Then
• Note that strLetter’s value is not permanently converted

Programming with Microsoft Visual Basic 2008, Fourth Edition

Converting a String to Uppercase or Lowercase (continued)

Figure 4-24: Syntax and examples of the ToUpper and ToLower methods

Programming with Microsoft Visual Basic 2008, Fourth Edition

Converting a String to Uppercase or Lowercase (continued)

Figure 4-24: Syntax and examples of the ToUpper and ToLower methods (continued)

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using the ToUpper and ToLower Methods: Displaying a Message
• Procedure requirements:
• Display message “We have a store in this state”
• Valid states: IL, IN, KY
• Must handle case variations in the user’s input
• Can use ToLower or ToUpper
• Can assign a String variable to the input textbox’s value converted to upper case

Dim strState As String

strState = txtState.Text.ToUpper

• Use If/Else to test value and display message

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Boolean Values
• Boolean variable: Contains either True or False
• Naming convention: “Is” denotes Boolean type
• Example: blnIsInsured
• When testing for a True value, it is not necessary to include the “= True”
• Examples:

If blnIsInsured = True Then

or

If blnIsInsured Then

• Use Not logical operator to test for False value

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Boolean Values (continued)

Figure 4-27: Examples of comparing Boolean values in an If…Then…Else statement’s condition

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Boolean Values: Determining Whether a String Can Be Converted to a Number
• Determining whether a string can be converted to a number:
• TryParse method returns a numeric value after converting the string, or 0 if it cannot be converted
• TryParse also returns a Boolean value indicating success or failure of the conversion attempt
• Use Boolean value returned by TryParse method in an If…Then…Else statement

Programming with Microsoft Visual Basic 2008, Fourth Edition

Comparing Boolean Values: Determining Whether a String Can be Converted to a Number (continued)

Figure 4-28: Syntax and example of using the Boolean value returned by the TryParse method

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson A Summary
• Arithmetic operators are evaluated first, then comparison operators, and finally logical operators
• If...Then...Else statement: Selection structure with a true path and a false path
• Use comparison operators to compare two values
• Use a temporary variable to swap values contained in two variables
• Use logical operators to create a compound condition

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson A Summary (continued)
• Use text box’s CharacterCasing property to change text to upper or lower case
• Use ToUpper and ToLower to temporarily modify the case of input text
• Use Boolean return value of TryParse method to determine whether string was successfully converted to numeric value

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson B Objectives

After studying Lesson B, you should be able to:

• Group objects using a GroupBox control
• Calculate a periodic payment using the Financial.Pmt method
• Create a message box using the MessageBox.Show method
• Determine the value returned by a message box

Programming with Microsoft Visual Basic 2008, Fourth Edition

Creating the Monthly Payment Calculator Application
• Program requirement: Calculate monthly payment on car loan
• To do so, application needs:
• The loan amount (principal)
• The annual percentage rate (APR) of interest
• The life of the loan (term) in years

Programming with Microsoft Visual Basic 2008, Fourth Edition

Adding a Group Box to the Form
• Group box: Container control for other controls
• GroupBox tool:
• Used to add group box control to interface
• Group box control provides:
• Visual separation of related controls
• Ability to manage the grouped controls by manipulating the group box control
• Lock controls to ensure that they are not moved
• Be sure to set TabIndex after placement of controls

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the Monthly Payment Calculator Application
• Procedures required according to TOE chart:
• Click event procedure code for the two buttons
• Code for TextChanged, KeyPress, and Enter events for text boxes
• Procedures that are already coded:
• btnExit Click event and TextChanged events for the text boxes
• Procedure to code in Lesson B:
• btnCalc button’s Click event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-33: TOE chart for the Monthly Payment Calculator application

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the btnCalc Control’s Click Event Procedure
• Tasks for btnCalc button’s Click event procedure:
• Calculate monthly payment amount
• Display result in lblPayment control
• Two selection structures needed
• If and If/Else
• Determine interest rate and term
• Determine need for named constants and variables within procedure
• Constants: Items that do not change with each call
• Variables: Items will likely change with each call

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-34: Pseudocode for the btnCalc control’s Click event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Figure 4-35: Partially completed Click event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using the Financial.Pmt Method
• Calculates periodic payment on loan or investment
• Must ensure that interest rate and number of periods are expressed in same units (months or years)
• Convert an annual interest rate to monthly rate by dividing by 12
• Convert an annual term to a monthly term by multiplying by 12

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using the Financial.Pmt Method (continued)

Figure 4-36: Basic syntax and examples of the Financial.Pmt method

Programming with Microsoft Visual Basic 2008, Fourth Edition

Using the Financial.Pmt Method (continued)

Figure 4-37: Selection structure’s true path coded in the procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

The MessageBox.Show Method
• MessageBox.show method: Displays message box with text message, caption, button(s), and icon
• Use sentence capitalization for text message
• Use book title capitalization for caption
• Icons:
• Exclamation or Question: Indicates user must make a decision before continuing
• Information: Indicates informational message
• Stop: Indicates serious problem

Programming with Microsoft Visual Basic 2008, Fourth Edition

The MessageBox.Show Method (continued)

Figure 4-41: Values returned by the MessageBox.Show method

Programming with Microsoft Visual Basic 2008, Fourth Edition

The MessageBox.Show Method (continued)

Figure 4-41: Values returned by the MessageBox.Show method (continued)

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson B Summary
• Group box is container control that treats its contents as one unit
• Use Financial.Pmt method to calculate loan or investment payments
• MessageBox.Show method displays message box with text, one or more buttons, and icon

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson C Objectives

After studying Lesson C, you should be able to:

• Prevent the entry of unwanted characters in a text box
• Select the existing text in a text box

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the KeyPress Event Procedures
• KeyPress event:
• Occurs when key is pressed while control has focus
• Character corresponding to pressed key is sent to KeyPress event’s e parameter
• KeyPress event can be used to prevent users from entering inappropriate characters
• Use e parameter’s KeyChar property to determine pressed key
• Use Handled property to cancel key if needed

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the KeyPress Event Procedures (continued)

Figure 4-47: Code template for the txtPrincipal’s KeyPress event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the KeyPress Event Procedures (continued)

Figure 4-48: Examples of using the KeyChar and Handled properties in the KeyPress event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the KeyPress Event Procedures (continued)

Figure 4-49: Completed CancelKeys procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the Enter Event Procedure
• Enter event:
• Occurs when text box receives focus
• If text is selected, user can replace existing text by pressing key
• Can use Enter event to select all of text
• SelectAll method: Selects all text contained in text box
• Add to each text box’s Enter event procedure

Programming with Microsoft Visual Basic 2008, Fourth Edition

Coding the Enter Event Procedure (continued)

Figure 4-50: Syntax and an example of the SelectAll method

Programming with Microsoft Visual Basic 2008, Fourth Edition

Lesson C Summary
• KeyPress event occurs when user presses key
• Use KeyPress event to cancel unwanted key entered by user
• Enter event occurs when text box receives focus
• Use Enter event to process code when control receives focus
• Use SelectAll method to select all contents of text box

Programming with Microsoft Visual Basic 2008, Fourth Edition