Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 7: Sub and Function Procedures

Similar presentations


Presentation on theme: "Chapter 7: Sub and Function Procedures"— Presentation transcript:

1 Chapter 7: Sub and Function Procedures
Programming with Microsoft Visual Basic 2005, Third Edition

2 Creating Sub and Function Procedures Lesson A Objectives
Explain the difference between a Sub procedure and a Function procedure Create a procedure that receives information passed to it Explain the difference between passing data by value and passing data by reference Create a Function procedure Programming with Microsoft Visual Basic 2005, Third Edition

3 Previewing the Completed Application
Go to Run command on Windows Start menu Browse to the VB2005\Chap07 folder Open the Harvey Industries.exe file The Harvey Industries user interface appears Programming with Microsoft Visual Basic 2005, Third Edition

4 Previewing the Completed Application (continued)
Figure 7-1: Payroll amounts shown in the user interface Programming with Microsoft Visual Basic 2005, Third Edition

5 Procedures Procedure Two types of procedures in Visual Basic
Block of program code that performs a specific task Two types of procedures in Visual Basic Sub procedure: does not return a value Function procedure: does return a value Programming with Microsoft Visual Basic 2005, Third Edition

6 Sub Procedures Event procedure Independent procedure
Associated with a specific object and event Called by Visual Basic in response to an event Independent procedure Independent of any object and event Invoked from code using a Call statement Parameter: data passed to procedure at call time Programming with Microsoft Visual Basic 2005, Third Edition

7 Passing Information to an Independent Sub Procedure
Call syntax: Call procedurename([argumentlist]) argumentlist: used to pass information (optional) Argument: data item in an argumentlist Parameter: data item in a parameterlist Relationship between arguments and parameters Should agree in number, position, and data type Types of arguments passed to a procedure Variable, literal constant, named constant, keyword Programming with Microsoft Visual Basic 2005, Third Edition

8 Passing Variables Variables specified by name, address, and value
Passing by value Passes a copy of the data stored in a variable Passing by reference Passes the memory address of a variable Allows a procedure to change contents of variable Programming with Microsoft Visual Basic 2005, Third Edition

9 Passing by Value Copy of data, not variable address, is passed
How to pass by value Include the keyword ByVal before a parameter Reasons to pass by value Procedure needs to know contents of variable Procedure does not need to change original value By default, Visual Basic passes by value Programming with Microsoft Visual Basic 2005, Third Edition

10 Passing By Value (continued)
Figure 7-4: Code for the Pet Information application (continued) Programming with Microsoft Visual Basic 2005, Third Edition

11 Passing By Value (continued)
Figure 7-4: Code for the Pet Information application Programming with Microsoft Visual Basic 2005, Third Edition

12 Passing By Reference Variable address (memory location) is passed
Receiving procedure can access variable Reason to pass by reference Procedure needs to change a variable’s contents How to pass by reference Include keyword ByRef before a parameter Programming with Microsoft Visual Basic 2005, Third Edition

13 Passing By Reference (continued)
Figure 7-8: Code for the Gross Pay application (continued) Programming with Microsoft Visual Basic 2005, Third Edition

14 Passing By Reference (continued)
Figure 7-8: Code for the Gross Pay application (continued) Programming with Microsoft Visual Basic 2005, Third Edition

15 Passing By Reference (continued)
Figure 7-8: Code for the Gross Pay application Programming with Microsoft Visual Basic 2005, Third Edition

16 Function Procedures Function procedure
A block of code that performs a specific task Returns a value after completing task Examples of built-in functions: Val and InputBox Create your own functions using syntax template As datatype in header indicates return type of data Return expression type must agree with As datatype Programming with Microsoft Visual Basic 2005, Third Edition

17 Function Procedures (continued)
Figure 7-11: Syntax and an example of a Function procedure Programming with Microsoft Visual Basic 2005, Third Edition

18 The Pine Lodge Application
Objective: calculate employee’s new pay Application uses a function to calculate new pay Function requirements Input: employee’s current hourly pay and raise rate Process: calculate raise and then add to current pay Output: return new pay to calling procedure Programming with Microsoft Visual Basic 2005, Third Edition

19 The Pine Lodge Application (continued)
Figure 7-12: Sample run of the Pine Lodge application Programming with Microsoft Visual Basic 2005, Third Edition

20 Summary – Lesson A Two types of procedures: event and independent
Function: performs a task and returns a value Independent procedures and functions are called from the application’s code Pass by value: send a copy of variable contents to a procedure or function Pass by reference: send a variable address to a procedure or function Programming with Microsoft Visual Basic 2005, Third Edition

21 Coding The Harvey Industries Payroll Application Lesson B Objectives
Add a combo box to a form Add items to a combo box Sort the contents of a combo box Select a combo box item from code Programming with Microsoft Visual Basic 2005, Third Edition

22 Coding The Harvey Industries Payroll Application Lesson B Objectives (continued)
Determine the current item in a combo box Round a number Code a combo box’s TextChanged event procedure Programming with Microsoft Visual Basic 2005, Third Edition

23 Harvey Industries Objective: calculate and display pay information
Components of employee pay Employee’s weekly gross pay Social Security tax Medicare (FICA) tax Federal withholding tax (FWT) Net pay Input: name, marital status, hours, rate, allowances Programming with Microsoft Visual Basic 2005, Third Edition

24 Harvey Industries (continued)
Figure 7-15: Partially completed user interface for the Harvey Industries application Programming with Microsoft Visual Basic 2005, Third Edition

25 Including a Combo Box in an Interface
Allows user to select from a number of choices Allows user to type an entry not on list Can save a space on a form List box does not share features two and three DropDownStyle property Values: Simple, DropDown (default), DropDownList Programming with Microsoft Visual Basic 2005, Third Edition

26 Including a Combo Box in an Interface (continued)
Figure 7-16: Examples of the combo box styles Programming with Microsoft Visual Basic 2005, Third Edition

27 Including a Combo Box in an Interface (continued)
Change in item value causes TextChanged event Use Item collection’s Add method to add an item Other properties of a combo box Sorted: sorts items in dictionary order SelectedIndex: used to select an item in list portion SelectedItem: determines which item is selected Text: used to get or set a value in text portion Programming with Microsoft Visual Basic 2005, Third Edition

28 Including a Combo Box in an Interface (continued)
Figure 7-17: Code corresponding to the combo boxes shown in Figure 7-16 Programming with Microsoft Visual Basic 2005, Third Edition

29 Coding the xCalcButton’s Click Event Procedure
Review pay components to calculate and display: Gross pay FWT (federal withholding tax) FICA tax Net pay Procedure will call the GetFwt function Programming with Microsoft Visual Basic 2005, Third Edition

30 Coding the xCalcButton’s Click Event Procedure (continued)
Figure 7-22: Pseudocode for the xCalcButton’s Click event procedure Programming with Microsoft Visual Basic 2005, Third Edition

31 Coding the GetFwt Function
How to calculate weekly taxable wages Multiply number of withholding allowances by $63.46 Subtract result in first step from weekly wages Determining federal withholding tax (FWT) Evaluate weekly taxable wages and filing status Use data to look up FWT in special FWT tables GetFwt function emulates FWT table lookup Programming with Microsoft Visual Basic 2005, Third Edition

32 Coding the GetFwt Function (continued)
Figure 7-25: Weekly FWT tables (Single person) Programming with Microsoft Visual Basic 2005, Third Edition

33 Coding the GetFwt Function (continued)
Figure 7-30: FWT calculations for Single taxpayers Programming with Microsoft Visual Basic 2005, Third Edition

34 Completing the xCalcButton’s Click Event Procedure
Call GetFwt function from Click event procedure Three values passed to GetFwt status variable contents allowances variable contents gross variable contents Value returned by GetFwt assigned to fwt variable Use Math.Round function to round three values Gross pay, FWT, and FICA tax amounts Programming with Microsoft Visual Basic 2005, Third Edition

35 Completing the xCalcButton’s Click Event Procedure (continued)
Figure 7-34: Payroll calculations displayed in the interface Programming with Microsoft Visual Basic 2005, Third Edition

36 Summary – Lesson B Combo box displays a list of items for selection
Combo box allows user to type entry not on list Specify style of combo box using DropDownStyle property Use Items collection’s Add method to add items to a Combo box Math.Round function rounds off values to arbitrary number of decimal places Programming with Microsoft Visual Basic 2005, Third Edition

37 Completing the Harvey Industries Payroll Application Lesson C Objectives
Prevent a form from closing Programming with Microsoft Visual Basic 2005, Third Edition

38 Coding The MainForm’s FormClosing Event Procedure
Occurs when a form is about to be closed Two ways to cause a FormClosing event Computer processes the Me.Close() statement User clicks the Close button on the form’s title bar Requirement for FormClosing event procedure Verifying that user wants to close the application Taking appropriate action based on user’s response Programming with Microsoft Visual Basic 2005, Third Edition

39 Coding The MainForm’s FormClosing Event Procedure (continued)
Figure 7-35: Pseudocode for the MainForm’s FormClosing event procedure Programming with Microsoft Visual Basic 2005, Third Edition

40 Coding The MainForm’s FormClosing Event Procedure (continued)
Figure 7-36: Message box displayed by the FormClosing event procedure Programming with Microsoft Visual Basic 2005, Third Edition

41 Summary – Lesson C FormClosing event occurs when Me.Close () is called
FormClosing event also occurs when Close button is clicked Form’s FormClosing event procedure is processed before a form is about to close Programming with Microsoft Visual Basic 2005, Third Edition


Download ppt "Chapter 7: Sub and Function Procedures"

Similar presentations


Ads by Google