Title: Developing a Visual Basic Application
1Developing a Visual Basic Application
2Problem
- Create a Windows-based application that will
calculate the Gross Pay earned for a worker,
given the number of hours worked and hourly pay
rate.
3Step 1 Understand Problem
- Clearly define the problem and identify what the
program is to do - Purpose To calculate a workers gross pay
- Input Number of hours worked, hourly pay rate
- Process Multiply number of hours worked by
hourly pay rate (result is the users gross pay) - Output Display a message indicating the users
gross pay
4Step 2 Design Solution
- Traditional Procedural Approach - Develop an
algorithm - Display message "How many hours did you work?"
- Allow user to enter number of hours worked
- Store the number the user enters in memory
- Display message "How much are you paid per
hour?" - Allow the user to enter an hourly pay rate
- Store the number the user enters in memory
- Multiply hours worked by pay rate and store the
result in memory - Display a message with the result of the previous
step - This well-defined, ordered set of steps for
solving a problem is called an algorithm.
5Step 2 Design Solution (cont.)
- VB (GUI) Approach Identify required controls
and events/handlers - Inputs - entered into the program via Controls
- Hours Worked
- Hourly Pay Rate
- Processes - initiated by Events and carried out
by the code contained in the corresponding Event
Procedures - Calculate Gross Pay
- Gross Pay hoursWorked hourlyPayRate
- Output - displayed to the user via Controls
- Gross Pay
6Step 2 Design Solution (cont.)
- Inputs (controls)
- Hours Worked ? Textbox, Label (title/prompt)
- Hourly Pay Rate ? Textbox, Label (title/prompt)
- Processes (events/event procedures)
- Calculate Gross Pay ? Button(click)
- Gross Pay hoursWorked hourlyPayRate
- Exit Program ? Button(click)
- End
- Outputs (controls)
- Gross Pay Earned ? Label (display result), Label
(title)
7Step 2 Design Solution (cont.)
- Design the Interface TOE Chart
- Task, Object, Event
- Plan the interface BEFORE creating in VB
- Examines all of the tasks involved in solution
Task (T) Object (O) Event (E)
Input Hours Worked Textbox, Label None
Input Pay Rate Textbox, Label None
Output Gross Pay Label (display), Label (title) None
Calculate Gross Pay Button Click
Exit Program Button Click
8Step 2 Design Solution (cont.)
- Make a list of the controls needed
- Define values for each control's relevant
properties
Control Type Control Name Text Form (Default) "Wag
e Calculator" TextBox txtHoursWorked "" Label (Def
ault) "Number of Hours Worked" TextBox txtPayRate
"" Label (Default) "Hourly Pay Rate" Label lblGros
sPay "0.00" Label (Default) "Gross Pay
Earned" Button btnCalcGrossPay "Calculate Gross
Pay" Button btnExit Exit"
9Step 2 Design Solution (cont.)
- Make a list the events/procedures needed
- Develop an algorithm for each procedure
Event Event Procedure Code Algorithm btnCalcGross
Pay_Click Get hours worked from
txtHoursWorked Get hourly pay rate from
txtPayRate Multiply hours worked by hourly pay
rate Assign result to lblGrossPay btnClose_Clic
k End the application
10Step 2 Design Solution (cont.)
- Visualize the application running on the computer
and design its user interface
11Step 3 Implementation
- Creating the Visual Basic Application - Event
Driven Programming Steps - Create the Interface / Window first
- Input
- Output
- Set the Properties
- Configure the appearance and behavior of the
controls - Then Code the Application
- Processes - Event Handing Methods
12Step 3 Implementation(cont.)
- Create the Interface - Use Visual Basic to create
the forms and other controls identified in the
previous step - This is the first use of Visual Basic, all of the
previous steps have just been on paper - In this step you develop the portion of the
application the user will see
Label
Text Box
Label
Text Box
Label
Label
2 Buttons
13Step 3 Implementation(cont.)
- Set Properties - Use Visual Basic to set
properties for the forms and other controls from
list you made earlier - In this step you still developing the portion of
the application the user will see
Control Type Control Name Text Form (Default) "Wag
e Calculator" TextBox txtHoursWorked "" Label (Def
ault) "Number of Hours Worked" TextBox txtPayRate
"" Label (Default) "Hourly Pay Rate" Label lblGros
sPay "0.00" Label (Default) "Gross Pay
Earned" Button btnCalcGrossPay "Calculate Gross
Pay" Button btnExit Exit"
14Step 3 Implementation(cont.)
- Create the Events/Procedures - Use Visual Basic
to create and write the code for the event
procedures identified earlier - In this step you develop the methods behind the
click event for each button - Unlike the interface, this portion of the
application is invisible to the user
15Step 3 Implementation(cont.)
- btnCalculate
- Button Click Event
- Assignment statement
- lblGrossPay.text Val(txtHoursWorked.text)
Val(txtPayRate.text) - Gets data from txtHoursWorked.text and
txtPayRate.text - Assigns results from hours rate calculation to
lblGrossPay.text - Val changes the text input from the text box into
a number
16Step 3 Implementation(cont.)
- btnExit
- Button Click Event
- End
17Step 4 Evaluation
- 3 Major Types of Errors
- Syntax Errors Language Errors
- Caught by the Compiler Interpreter
- Visual Basic wavy line under problem code
- Run-Time Errors
- Program will not run to normal completion
- Program Crashes
- Logic Errors
- Program Runs but produces incorrect results
18Step 4 Evaluation(cont.)
- Attempt to run the application - find syntax
errors and runtime errors - Correct any syntax errors found indicated by
wavy blue line - All syntax errors must be removed before Visual
Basic will create a program that actually runs - Find and correct and correct any runtime errors
until program runs to normal completion
19Step 4 Evaluation(cont.)
- Run the application using test data as input
- Run the program with a variety of test data
- Must test for expected and unexpected input
- negative numbers, blank text box, etc.
- will talk about how to deal with invalid input
later - Check the results to be sure that they are
correct - Correct any logic errors found
- Repeat this step as many times as necessary
20Homework
- Homework 2
- Visual Basic Application
- See handout for details and due date
- Questions?