Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2
Figure 3-2 Completed order form
3
Lesson A Objectives
After studying Lesson A, you should be able
to:
Declare variables and named constants
Assign data to an existing variable
Convert string data to a numeric data type
using the TryParse method
Convert numeric data to a different data
type using the Convert class methods
4
Lesson A Objectives (cont’d.)
Explain the scope and lifetime of variables
and named constants
Explain the purpose of the Option Explicit,
Option Infer, and Option Strict
5
Using Variables to Store
Information
Controls and variables temporarily store data
Variable: Temporary storage location in
main memory
Specified by data type, name, scope, and
lifetime
Reasons to use variables
Hold information that is not stored in control
on form
Allow for more precise treatment of numeric
data
Enable code to run more efficiently
6
Using Variables to Store
Information (cont’d.)
Selecting a data type for a variable
Data type: Specifies type of data a variable
can store
Provides a class template for creating
variables
Unicode
Universal coding scheme for characters
Assigns unique numeric value to each
character in the written languages of the
world
7
Figure 3-3
Basic data types in
Visual Basic
8
Using Variables to Store
Information (cont’d.)
For this course:
Use Integer data type for all integers
Use either Decimal or Double data type for
numbers containing decimal places or
numbers used in calculations
Use String data type for text or numbers not
used in calculations
Use Boolean data type for Boolean values
9
Using Variables to Store
Information (cont’d.)
Selecting a name for a variable
Variables are referred to by name
Identifier: Another term for variable name
Guidelines for naming variables
Use Hungarian notation, with a three-
character prefix representing the variable’s
data type
Name should be descriptive: e.g., dblLength
Use camel case: e.g., dblSalesAmount
Must follow variable naming rules
10
Figure 3-4 Variable naming rules and examples
11
Using Variables to Store
Information (cont’d.)
Declaring a variable
Declaration statement: Used to declare (create)
a variable and reserve space in memory for it
Syntax shown in Figure 3-5 on next slide
If no initial value is given to variable when
declaring it, computer stores default value
Numeric variables are set to 0
Boolean variables are set to False
Object and String variables are set to Nothing
Date variables are set to 1/1/0001 12:00:00AM
12
Figure 3-5 Syntax and examples of a variable declaration statement
13
Assigning Data to an Existing
Variable
Assignment statement: Assigns value to
variable at run time
Syntax: variablename = expression
Expression may include literal constants,
object properties, variables, keywords,
arithmetic operators
Literal constant
Data item whose value does not change
Example: The string “Mary”
Literal type character
Forces literal constant to change data type
14
Figure 3-6 Assignment statements in which the value’s data
type matches the variable’s data type
15
Assigning Data to an Existing
Variable (cont’d.)
TryParse method: Converts string to
number
TryParse is preferred over Val
Allows programmer to specify data type
Val only returns a type Double value
Syntax shown in Figure 3-7 on next slide
dataType: Numeric data type, such as Integer
string : String to be converted
variable : Variable that receives the numeric
value
16
Figure 3-7 Basic syntax and examples of the TryParse method
17
Assigning Data to an Existing
Variable (cont’d.)
Convert class: Can be used to convert a
number from one type to another
Syntax shown in Figure 3-9 on next slide
– Convert: Name of class
– method: Converts value to specified data
type
– value: Numeric data to be converted
TryParse is recommended for converting
strings to numeric data types
Will not produce an error if conversion fails
18
Figure 3-9 Syntax and examples of the Convert class methods
19
The Scope and Lifetime of a
Variable
Scope: Indicates where variable can be used
Lifetime: How long variable remains in memory
Scope and lifetime are determined by where
variable is declared
Three types of scope
Class: Variable can be used by all procedures in a
form
Procedure: Variable can be used within procedure
Block: Variable can be used within specific code
block
20
The Scope and Lifetime of a
Variable (cont’d.)
Variables with procedure scope
Can be used only by that procedure
Declared at beginning of procedure
Removed from memory when procedure ends
Declared using Dim keyword
Most variables used in this course will be
procedure-level variables
Sales tax example UI and code given on
following slides illustrate use of procedure
variables
21
The Scope and Lifetime of a
Variable (cont’d.)
Figure 3-10 User interface for the Sales Tax Calculator application
22
Figure 3-11
Click event
procedures using
procedure-level
variables
23
The Scope and Lifetime of a
Variable (cont’d.)
Variables with class scope
Can be used by all procedures in a form
Declared in form’s Declarations section
Remain in memory until application ends
Declared using Private keyword
Total Sales example UI and code given on
following slides illustrate use of class-level
variables
24
The Scope and Lifetime of a
Variable (cont’d.)
25
Figure 3-13 Code using a class-level variable
26
Static Variables
Static variable: Procedure-level variable
with extended lifetime
Remains in memory between procedure calls
Retains its value even when the procedure
ends
Static keyword: Used to declare static
variable
Static variables act like class-level variables
but have narrower scope
Can only be used within procedure where
declared
27
Figure 3-14 Code using a static variable
28
Named Constants
Named constant
Memory location inside computer whose
contents cannot be changed at run time
Const statement: Creates named constant
Stores value of expression in named constant
expression: Can be literal constant, another
named constant, or an arithmetic operator
Cannot contain a variable or method
Syntax and examples shown in Figure 3-15
on next slide
29
Figure 3-15 Syntax and examples of the Const statement
30
Figure 3-16 User interface for the Area Calculator application
31
Option Explicit, Option Infer, and
Option Strict
Option Explicit On statement
Prevents you from using undeclared variables
Implicit type conversion: Converts right-
side value to the data type of left side
Promotion
Data converted to greater precision number
e.g., Integer to Decimal
Demotion
Data truncated
e.g., Decimal to Integer
Data loss can occur when demotion occurs
32
Option Explicit, Option Infer, and
Option Strict (cont’d.)
Option Infer Off statement:
Ensures that every variable is declared with a
data type
Option Strict On statement:
Disallows implicit conversions
Type conversion rules are applied when this
option is on
Figure 3-18 on following slide contains
examples
33
Figure 3-18 Rules and examples of type conversions
34
Option Explicit, Option Infer, and
Option Strict (cont’d.)
35
Lesson A Summary
Declare a variable using {Dim | Private |
Static}
Assignment statement: Assigns value to a
variable
Three levels of scope: Block, procedure, class
TryParse () converts strings to numeric data
Use Const to declare a named constant
Avoid programming errors by using Option
Explicit On, Option Infer Off, and Option
Strict On
36
Lesson B Objectives
After studying Lesson B, you should be able
to:
Include procedure-level and class-level
variables in an application
Concatenate strings
Get user input using the InputBox function
Include the ControlChars.NewLine
constant in code
Designate the default button for a form
Format numbers using the ToString method
37
Modifying the Playtime Cellular
Application
Modifications needed:
Calculate and display the sales tax
Display salesperson name
Revise the TOE chart to reflect the new
tasks
Must modify btnCalc button’s Click event
and the form’s Load event
38
Figure 3-20 Revised TOE chart for the Playtime Cellular application
39
Modifying the Calculate Order
Button’s Code
General strategy
Remove existing code from Click event procedure
Recode the procedure using variables in equations
Use Option Explicit On statement
Enforces full variable declaration
Use Option Infer Off statement
Enforces that variables are declared with data
types
Use Option Strict On statement
Suppresses implicit type conversions
40
Figure 3-22 Jagged blue lines indicate errors in the statements
41
Modifying the Calculate Order
Button’s Code (cont’d.)
Figure 3-24 Revised pseudocode for the btnCalc control’s Click event procedure
42
Modifying the Calculate Order
Button’s Code (cont’d.)
43
Modifying the Calculate Order
Button’s Code (cont’d.)
44
Figure 3-27
Code entered in the
btnCalc control’s Click
event procedure
45
Concatenating Strings
Concatenate: Connect strings together
Concatenation operator: Ampersand (&)
Include space before and after & operator
Numeric values used with the & operator
are converted to strings
46
Concatenating Strings
(cont’d.)
47
The InputBox Function
InputBox function
Displays dialog box and retrieves user input
Arguments
prompt: Message to display inside dialog box
title: Text to display in the dialog box’s title
bar
defaultResponse: Text to be displayed in the
input field
Returned value most often assigned to String
variable
Syntax shown in Figure 3-33 on next slide
48
Figure 3-33
Basic syntax and examples of
the InputBox function
49
The ControlChars.Newline
Constant
ControlChars.NewLine constant
Advances the insertion point to the next line
in a control
Also used to advance insertion point in file or
on printer
To use, type ControlChars.NewLine at
appropriate location
Can be used with string concatenation
Line continuation character (_)
Used to break up long line of code into two or
more lines
50
The ControlChars.Newline
Constant (cont’d.)
51
Designating a Default Button
Default button
Button that is activated by pressing Enter key
Button is not required to have the focus
Only one per form
Default button should be button used most
often by the user
Except if button’s task is destructive and
irreversible, such as deleting data
Set form’s AcceptButton property to button
name
52
Using the ToString Method to
Format Numbers
Formatting: Specifying decimal places and
special characters to display
ToString method is replacing Format
function
Syntax:
variablename.ToString(formatString)
variablename: Name of a numeric variable
formatString: String specifying format you
want to use
format String has form of Axx specifying a
format and precision specifier
53
Figure 3-40
Syntax and examples of the
ToString method
54
Lesson B Summary
Concatenation operator (&)
Used to link strings
InputBox function
Displays interactive dialog box
Use ControlChars.NewLine to move
insertion point to a new line
Set default button in form’s AcceptButton
property
ToString method
Formats number for string output
55
Lesson C Objectives
After studying Lesson C, you should be able
to:
Include a Static variable in code
Code the TextChanged event procedure
Create a procedure that handles more than
one event
56
Modifying the Load
and Click Event Procedures
Capability needed when each order is
calculated
Order form should ask for the salesperson’s
name
Revise TOE chart before implementing
changes
Shift task of retrieving name to btnCalc’s
Click event
Use static variable for the salesperson’s
name
57
Figure 3-45 Revised TOE chart
58
Modifying the Load
and Click Event Procedures
(cont’d.)
59
Coding the TextChanged
Event Procedure
TextChanged event
Occurs when the Text property value of a
control changes
Can occur when:
The user enters data into the control
Code assigns data to the control’s Text
property
Example:
A change is made to the number of items
ordered
60
Coding the TextChanged
Event Procedure (cont’d.)
Associating a procedure with different
objects and events
Handles clause
Appears in an event procedure’s header
Indicates object and event associated with
procedure
Can associate an event procedure with
more than one object and/or event
In Handles section of procedure header, list
each object and event, separated by commas
61
Coding the TextChanged
Event Procedure (cont’d.)
62
Figure 3-49
Playtime Cellular application’s code at
the end of Lesson C (continues)
63
Figure 3-49
Playtime Cellular application’s code
at the end of Lesson C (cont’d.)
64
Lesson C Summary
TextChanged event procedure responds to
change in value of control’s Text Property
Handles clause
Determines which objects and events are
associated with the event procedure
To create procedure for more than one
object or event:
List each object and event after Handles
keyword
65