Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 3 - VB 2005 by Schneider1 Chapter 3 – Fundamentals of Programming in Visual Basic 3.1 Visual Basic Controls 3.2 Visual Basic Events 3.3 Numbers.

Similar presentations


Presentation on theme: "Chapter 3 - VB 2005 by Schneider1 Chapter 3 – Fundamentals of Programming in Visual Basic 3.1 Visual Basic Controls 3.2 Visual Basic Events 3.3 Numbers."— Presentation transcript:

1 Chapter 3 - VB 2005 by Schneider1 Chapter 3 – Fundamentals of Programming in Visual Basic 3.1 Visual Basic Controls 3.2 Visual Basic Events 3.3 Numbers 3.4 Strings 3.5 Input and Output

2 Chapter 3 - VB 2005 by Schneider2 3.1 Visual Basic Controls Invoking Visual Basic Text Box Control Button Control Label Control List Box Control Name Property Fonts / Auto Hide Positioning and Aligning Controls

3 Chapter 3 - VB 2005 by Schneider3 Visual Basic Start Page

4 Chapter 3 - VB 2005 by Schneider4 Start a New Project

5 Chapter 3 - VB 2005 by Schneider5 New Project Dialog Box

6 Chapter 3 - VB 2005 by Schneider6 Initial Visual Basic Screen

7 Chapter 3 - VB 2005 by Schneider7 Toolbox

8 Chapter 3 - VB 2005 by Schneider8 3 Ways to Place a Control from the Toolbox onto the Form Window Double-click Drag Click, Point, and Drag

9 Chapter 3 - VB 2005 by Schneider9 Four Controls at Design Time Text box To select a control, click on it. Sizing handles will appear when a control is selected.

10 Chapter 3 - VB 2005 by Schneider10 Text Box Control Used for input and output When used for output, ReadOnly property is set to True Sizing handles Tasks button

11 Chapter 3 - VB 2005 by Schneider11 Properties Window Categorized view Alphabetical view Press F4 to display the Properties window for the selected control.

12 Chapter 3 - VB 2005 by Schneider12 Properties Window Properties Settings Selected control

13 Chapter 3 - VB 2005 by Schneider13 Some Often Used Properties Text Autosize Font.Name Font.Size ForeColor BackColor ReadOnly

14 Chapter 3 - VB 2005 by Schneider14 Setting Properties Click on property name in left column. Enter its setting into right column by typing or selecting from options displayed via a button or ellipses.

15 Chapter 3 - VB 2005 by Schneider15 Setting the ForeColor Property 1.Click on ForeColor. 2.Click on button at right of settings box. 3.Click on Custom tab to obtain display shown. 4.Click on a color.

16 Chapter 3 - VB 2005 by Schneider16 Font Property 1.Click on Font in left column. 2.Click on ellipsis at right of settings box to obtain display shown, 3.Make selections.

17 Chapter 3 - VB 2005 by Schneider17 Button Control The caption on the button should indicate the effect of clicking on the button. Text property determines caption.

18 Chapter 3 - VB 2005 by Schneider18 Add an "access key"

19 Chapter 3 - VB 2005 by Schneider19 Label Control Used to identify the contents of a text box. Text property specifies caption. By default, label automatically resizes to accommodate caption on one line. When the AutoSize property is set to False, label can be resized manually. Used primarily to obtain a multi-rowed label.

20 Chapter 3 - VB 2005 by Schneider20 List Box Control Initially used to display several pieces of output. Later used to select from a list.

21 Chapter 3 - VB 2005 by Schneider21 The Name Property How the programmer refers to a control in code Setting for Name property near top of Properties window. Name must begin with a letter, be less than 215 characters long, and may include numbers and letters. Use appropriate 3- or 4-character naming prefix

22 Chapter 3 - VB 2005 by Schneider22 Control Name Prefixes ControlPrefixExample buttonbtnbtnCompute labellbllblAddress text boxtxttxtAddress list boxlstlstOutput

23 Chapter 3 - VB 2005 by Schneider23 Renaming the Form Initial name is Form1 The Solution Explorer window lists a file named Form1.vb. To rename the form, change the name of this file to newName.vb newName should begin with prefix frm.

24 Chapter 3 - VB 2005 by Schneider24 Fonts Proportional width fonts take up less space for "I" than for "W" – like Microsoft Sans Serif Fixed-width fonts take up the same amount of space for each character – like Courier New Fixed-width fonts are good for tables.

25 Chapter 3 - VB 2005 by Schneider25 Auto Hide Hides Toolbox when not in use Vertical push pin icon indicates auto hide is disabled. Click the push pin to make it horizontal and enable auto hide. Push pin

26 Chapter 3 - VB 2005 by Schneider26 Positioning Controls Proximity line

27 Chapter 3 - VB 2005 by Schneider27 Aligning Controls Snap line

28 Chapter 3 - VB 2005 by Schneider28 Aligning Controls Snap line

29 Chapter 3 - VB 2005 by Schneider29 3.2 Visual Basic Events An Event Procedure Walkthrough Properties and Event Procedures of the Form The Header of an Event Procedure

30 Chapter 3 - VB 2005 by Schneider30 Event An event is an action, such as the user clicking on a button Usually, nothing happens in a Visual Basic program until the user does something and generates an event. What happens is determined by statements.

31 Chapter 3 - VB 2005 by Schneider31 Sample Statements txtBox.ForeColor = Color.Red txtBox.Visible = True txtBox.Text = “Hello World” General Form: controlName.property = setting

32 Chapter 3 - VB 2005 by Schneider32 Sample Form txtFirst txtSecond btnRed

33 Chapter 3 - VB 2005 by Schneider33 Focus When you click on a text box, a cursor appears in the text box, and you can type into the text box. Such a text box is said to have the focus. If you click on another text box, the first text box loses the focus and the second text box receives the focus.

34 Chapter 3 - VB 2005 by Schneider34 Examples of Events btnShow.Click txtBox.TextChanged txtBox.Leave General Form: controlName.event

35 Chapter 3 - VB 2005 by Schneider35 The three steps in creating a Visual Basic program: 1.Create the interface; that is, generate, position, and size the objects. 2.Set properties; that is, configure the appearance of the objects. 3.Write the code that executes when events occur.

36 Chapter 3 - VB 2005 by Schneider36 Code Window Method Name box Class Name box Page tab

37 Chapter 3 - VB 2005 by Schneider37 Structure of an Event Procedure Private Sub objectName_event(...) Handles objectName.event statements End Sub (...) is filled automatically with (ByVal sender As System.Object, ByVal e As System.EventArgs) Header

38 Chapter 3 - VB 2005 by Schneider38 Code Window Method Name box Class Name box Page tab

39 Chapter 3 - VB 2005 by Schneider39 Create an Outline for an Event Procedure; i.e. header and End Sub 1. Double-click on a control or 2. Use the Class Name and Method Name boxes. (We primarily use the first method.)

40 Chapter 3 - VB 2005 by Schneider40 Sample Form txtFirst txtSecond btnRed Double Click on txtFirst

41 Chapter 3 - VB 2005 by Schneider41 Code for Walkthrough Public Class frmDemo Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged End Sub End Class

42 Chapter 3 - VB 2005 by Schneider42 Code for Walkthrough Public Class frmDemo Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub End Class

43 Chapter 3 - VB 2005 by Schneider43 IntelliSense Automatically pops up to give the programmer help.

44 Chapter 3 - VB 2005 by Schneider44 Code Window Click tab to return to Form Designer

45 Chapter 3 - VB 2005 by Schneider45 Sample Form txtFirst txtSecond btnRed Double-click on btnRed

46 Chapter 3 - VB 2005 by Schneider46 Code for Walkthrough Public Class frmDemo Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) Handles btnRed.Click End Sub End Class

47 Chapter 3 - VB 2005 by Schneider47 Code for Walkthrough Public Class frmDemo Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) Handles btnRed.Click txtFirst.ForeColor = Color.Red End Sub End Class

48 Chapter 3 - VB 2005 by Schneider48 Event Procedure txtFirst.Leave Select txtFirst from Class Name box drop-down list. Select Leave from Method Name box drop-down list.

49 Chapter 3 - VB 2005 by Schneider49 Code for Walkthrough Private Sub txtFirst_Leave(...) Handles txtFirst.Leave End Sub Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) Handles btnRed.Click txtFirst.ForeColor = Color.Red End Sub

50 Chapter 3 - VB 2005 by Schneider50 Code for Walkthrough Private Sub txtFirst_Leave(...) Handles txtFirst.Leave txtFirst.ForeColor = Color.Black End Sub Private Sub txtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) Handles btnRed.Click txtFirst.ForeColor = Color.Red End Sub

51 Chapter 3 - VB 2005 by Schneider51 Header of Event Procedure Private Sub btnRed_Click(…) Handles btnRed.Click Identifies event Name, can be changed. Private Sub Button_Press(…) Handles btnRed.Click

52 Chapter 3 - VB 2005 by Schneider52 Handling Multiple Events Private Sub Button_Click(...) Handles btnRed.Click, txtSecond.Leave txtFirst.ForeColor = Color.Red End Sub Event procedure can be invoked by two events.

53 Chapter 3 - VB 2005 by Schneider53 Altering Properties of the Form The following won't work: frmDemo.Text = "Demonstration" The form is referred to by the keyword Me. Me.Text = "Demonstration"

54 Chapter 3 - VB 2005 by Schneider54 3.3 Numbers Arithmetic Operations Variables Incrementing the Value of a Variable Built-In Functions: Math.Sqrt Int Math.Round

55 Chapter 3 - VB 2005 by Schneider55 Numbers continued The Integer Data Type Multiple Declarations Parentheses Three Types of Errors

56 Chapter 3 - VB 2005 by Schneider56 Arithmetic Operations Numbers are called numeric literals Five arithmetic operations in Visual Basic + addition - subtraction * multiplication / division ^ exponentiation

57 Chapter 3 - VB 2005 by Schneider57 Numeric Expressions 2 + 3 3 * (4 + 5) 2 ^ 3

58 Chapter 3 - VB 2005 by Schneider58 Displaying Numbers Let n be a number or a numeric expression. The statement lstBox.Items.Add(n) displays the value of n in the list box.

59 Chapter 3 - VB 2005 by Schneider59 Example 1: Form

60 Chapter 3 - VB 2005 by Schneider60 Example 1: Code and Output Private Sub btnCompute_Click (...) Handles btnCompute.Click lstResults.Items.Add(5) lstResults.Items.Add(2 * 3) lstResults.Items.Add((2 ^ 3) – 1) End Sub Output 5 in list 6 box 7

61 Chapter 3 - VB 2005 by Schneider61 Example 1: Code using With Private Sub btnCompute_Click (...) Handles btnCompute.Click With lstResults.Items.Add(5).Add(2 * 3).Add((2 ^ 3) – 1) End With End Sub

62 Chapter 3 - VB 2005 by Schneider62 Numeric Variable A numeric variable is a name to which a number can be assigned. Examples: speed distance interestRate balance

63 Chapter 3 - VB 2005 by Schneider63 Variables Declaration: Dim speed As Double Variable name Data type Assignment: speed = 50

64 Chapter 3 - VB 2005 by Schneider64 Initialization Numeric variables are automatically initialized to 0: Dim varName As Double To specify a nonzero initial value Dim varName As Double = 50

65 Chapter 3 - VB 2005 by Schneider65 Numeric Expressions Numeric variables can be used in numeric expressions. Dim balance As Double = 1000 lstBox.Items.Add(1.05 * balance) Output: 1050

66 Chapter 3 - VB 2005 by Schneider66 Assignment Statement Dim numVar1 As Double = 5 Dim numVar2 As Double = 4 numVar1 = 3 * numVar2 lstBox.Items.Add(numVar1) Output: 12

67 Chapter 3 - VB 2005 by Schneider67 Incrementing To add 1 to the numeric variable var var = var + 1 Or as a shortcut var += 1 Or as a generalization var += numeric expression

68 Chapter 3 - VB 2005 by Schneider68 Built-in Functions Functions return a value Math.Sqrt(9) returns 3 Int(9.7) returns 9 Math.Round(2.7) is 3

69 Chapter 3 - VB 2005 by Schneider69 Integer Data Type Variables of type Double can be assigned both whole numbers and numbers with decimals. The statement Dim varName As Integer declares a numeric variable that can only be assigned whole number values between about -2 billion and 2 billion.

70 Chapter 3 - VB 2005 by Schneider70 Multiple Declarations Dim a, b As Double Two other types of multiple-declaration statements are Dim a As Double, b As Integer Dim c As Double = 2, b As Integer = 5

71 Chapter 3 - VB 2005 by Schneider71 Parentheses Parentheses should be used liberally in numeric expressions. In the absence of parentheses, the operations are carried out in the following order: ^, * and /, + and -.

72 Chapter 3 - VB 2005 by Schneider72 Three Types of Errors Syntax error Run-time error Logic error

73 Chapter 3 - VB 2005 by Schneider73 Some Types of Syntax Errors Misspellings lstBox.Itms.Add(3) Omissions lstBox.Items.Add(2 + ) Incorrect punctuation Dim m; n As Integer

74 Chapter 3 - VB 2005 by Schneider74 A Type of Run-time Error Overflow error Dim numVar As Integer = 1000000 numVar = numVar * numVar

75 Chapter 3 - VB 2005 by Schneider75 A Logical Error Dim average As Double Dim m As Double = 5 Dim n As Double = 10 average = m + n / 2 Value of average will be 10. Should be 7.5.

76 Chapter 3 - VB 2005 by Schneider76 3.4 Strings Variables and Strings Using Text Boxes for Input and Output Concatenation String Properties and Methods: LengthToUpper TrimToLower IndexOfSubstring

77 Chapter 3 - VB 2005 by Schneider77 Strings continued The Empty String Initial Value of a String Option Strict Internal Documentation Line-Continuation Character

78 Chapter 3 - VB 2005 by Schneider78 String Literal A string literal is a sequence of characters surrounded by quotation marks. Examples: "hello" "123-45-6789" "#ab cde?"

79 Chapter 3 - VB 2005 by Schneider79 String Variable A string variable is a name to which a string value can be assigned. Examples: country ssn word firstName

80 Chapter 3 - VB 2005 by Schneider80 String Variable Declaration: Dim firstName As String Variable name Data type Assignment: firstName = "Fred"

81 Chapter 3 - VB 2005 by Schneider81 String Variable You can declare a string variable and assign it a value at the same time. Dim firstName As String = "Fred"

82 Chapter 3 - VB 2005 by Schneider82 Add Method Let str be a string literal or variable. Then, lstBox.Items.Add(str) displays the value of str in the list box.

83 Chapter 3 - VB 2005 by Schneider83 String Variable You can assign the value of one string variable to another. Dim strVar1 As String = "Hello" Dim strVar2 As String = "Goodbye" strVar2 = strVar1 lstOutput.Items.Add(strVar2) Output: Hello

84 Chapter 3 - VB 2005 by Schneider84 Variables and Strings Private Sub btnDisplay_Click(...) Handles btnDisplay.Click Dim today As String today = "Monday" lstOutput.Items.Add("hello") lstOutput.Items.Add(today) End Sub Output: hello Monday

85 Chapter 3 - VB 2005 by Schneider85 Using Text Boxes for Input and Output The contents of a text box is always a string Input example strVar = txtBox.Text Output example txtBox.Text = strVar

86 Chapter 3 - VB 2005 by Schneider86 Data Conversion Because the contents of a text box is always a string, sometimes you must convert the input or output. dblVar = CDbl(txtBox.Text) txtBox.Text = CStr(numVar) Converts a String to a Double Converts a number to a string

87 Chapter 3 - VB 2005 by Schneider87 Concatenation Combining two strings to make a new string quote1 = "We'll always " quote2 = "have Paris." quote = quote1 & quote2 txtOutput.Text = quote & " - Humphrey Bogart" Displays We'll always have Paris. - Humphrey Bogart

88 Chapter 3 - VB 2005 by Schneider88 Appending To append str to the string variable var var = var & str Or as a shortcut var &= str

89 Chapter 3 - VB 2005 by Schneider89 Appending Example Dim var As String = "Good" var &= "bye" txtBox.Text = var OUTPUT: Goodbye

90 Chapter 3 - VB 2005 by Schneider90 String Properties and Methods "Visual".Length is 6. "Visual".ToUpper is VISUAL. "123 Hike".Length is 8. "123 Hike".ToLower is 123 hike. "a" & " bcd ".Trim & "efg" is abcdefg.

91 Chapter 3 - VB 2005 by Schneider91 Positions in a String Positions of characters in a string are numbered 0, 1, 2, …. Consider the string “Visual Basic”. Position 0: V Position 1: i Position 7: B Substring “al” begins at position 4

92 Chapter 3 - VB 2005 by Schneider92 Substring Method Let str be a string. str.Substring(m, n) is the substring of length n, beginning at position m in str. “Visual Basic”.Substring(2, 3) is “sua” “Visual Basic”.Substring(0, 1) is “V”

93 Chapter 3 - VB 2005 by Schneider93 IndexOf Method Let str1 and str2 be strings. str1.IndexOf(str2) is the position of the first occurrence of str2 in str1. (Note: Has value -1 if str2 is not a substring of str1.) "Visual Basic".IndexOf("is") is 1. "Visual Basic".IndexOf("si") is 9. "Visual Basic".IndexOf("ab") is -1.

94 Chapter 3 - VB 2005 by Schneider94 The Empty String The string "", which contains no characters, is called the empty string or the zero-length string. The statement lstBox.Items.Add("") skips a line in the list box. The contents of a text box can be cleared with either the statement txtBox.Clear() or the statement txtBox.Text = ""

95 Chapter 3 - VB 2005 by Schneider95 Initial Value of a String By default the initial value is Nothing Strings can be given a different initial value as follows: Dim today As String = "Monday"

96 Chapter 3 - VB 2005 by Schneider96 Option Strict Visual Basic allows numeric variables to be assigned strings and vice versa, a poor programming practice. To turn this feature off, put the following statement at the very top of the code window Option Strict On

97 Chapter 3 - VB 2005 by Schneider97 Option Strict On for All Programs Select Options from the Tools menu In left pane, expand Projects and Solution Select VB Defaults Set Option Strict to On

98 Chapter 3 - VB 2005 by Schneider98 With Option Strict On Dim dblVar As Double, intVar As Integer Dim strVar As String Not Valid:Replace with: intVar = dblVarintVar = CInt(dblVar) dblVar = strVar dblVar = CDbl(strVar) strVar = intVarstrVar = CStr(intVar)

99 Chapter 3 - VB 2005 by Schneider99 Comments Private Sub btnCompute_Click (...) Handles btnCompute.Click 'Calculate the balance in an account Dim rate As Double 'Annual rate of interest Dim curBalance As Double 'Current balance

100 Chapter 3 - VB 2005 by Schneider100 Internal Documentation 1.Other people can easily understand the program. 2.You can understand the program when you read it later. 3.Long programs are easier to read because the purposes of individual pieces can be determined at a glance.

101 Chapter 3 - VB 2005 by Schneider101 Automatic Colorization Comments – green String literals – maroon Keywords – blue Note: Keywords are words such as Sub, Handles, Private, With, and End that have special meaning in Visual Basic. They cannot be used as variable names.

102 Chapter 3 - VB 2005 by Schneider102 Line-Continuation Character A long line of code can be continued on another line by using an underscore (_) preceded by a space msg = "I'm going to make " & _ "him an offer he can't refuse."

103 Chapter 3 - VB 2005 by Schneider103 3.5 Input and Output Formatting Output with Format Functions Formatting Output with Zones Reading Data from Files Getting Input from an Input Dialog Box Using a Message Dialog Box for Output Using a Masked Text Box for Input

104 Chapter 3 - VB 2005 by Schneider104 Formatting Output with Format Functions FunctionString Value FormatNumber(12345.628, 1)12,345.6 FormatCurrency(12345.628, 2)$12,345.63 FormatPercent(0.183, 0)18%

105 Chapter 3 - VB 2005 by Schneider105 Formatting Output with Zones Use a fixed-width font such as Courier New Divide the characters into zones with a format string. Dim fmtStr As String = "{0, 15}{1, 10}{2, 8}" lstOutput.Items.Add(String.Format(fmtStr, _ data0, data1, data2))

106 Chapter 3 - VB 2005 by Schneider106 Formatting Output with Zones Dim fmtStr As String = "{0, -15}{1, 10}{2, 8}" lstOutput.Items.Add(String.Format(fmtStr, _ data0, data1, data2)) Here, 15 was preceded by a minus sign. This produces left justification in 0 th zone. There will be right justification in the other two zones.

107 Chapter 3 - VB 2005 by Schneider107 Zone Formatting Symbols Symbols: N, C, and PEffect on zone :NrFormatNumber(data, r) :CrFormatCurrency(data, r) :PrFormatPercent(data, r) Dim fmtStr As String = "{0,15:N1}{1,10:C2}{2,8:P0}"

108 Chapter 3 - VB 2005 by Schneider108 Reading Data from Files Data can be stored in files and accessed with a StreamReader object. We assume that the files are text files (that is, have extension.TXT) and have one piece of data per line.

109 Chapter 3 - VB 2005 by Schneider109 Sample File: PAYROLL.TXT Mike Jones 7.35 35 John Smith 6.75 33 Name Hourly wage Number of hours worked

110 Chapter 3 - VB 2005 by Schneider110 Steps to Use StreamReader Execute a statement of the form Dim readerVar As IO.StreamReader = _ IO.File.OpenText(filespec) or the pair of statements Dim readerVar As IO.StreamReader readerVar = IO.File.OpenText(filespec)

111 Chapter 3 - VB 2005 by Schneider111 Steps to Use StreamReader Read items of data in order, one at a time, from the file with the ReadLine method. strVar = readerVar.ReadLine After the desired items have been read from the file, terminate the communications link readerVar.Close()

112 Chapter 3 - VB 2005 by Schneider112 Example using StreamReader Dim name As String Dim wage, hours As Double Dim sr As IO.StreamReader = _ IO.File.OpenText("PAYROLL.TXT") name = sr.ReadLine wage = CDbl(sr.ReadLine) hours = CDbl(sr.ReadLine) lstBox.Items.Add(name & ": " & wage * hours) OUTPUT: Mike Jones: 257.25

113 Chapter 3 - VB 2005 by Schneider113 Comment on Example Consider lstBox.Items.Add(name & ": " & wage * hours) The ampersand automatically converted wage * hours into a string before concatenating. We didn’t have to convert wage * hours with CStr.

114 Chapter 3 - VB 2005 by Schneider114 Getting Input from an Input Dialog Box stringVar = InputBox(prompt, title) fileName = InputBox("Enter the name " _ & "of the file containing the " & _ "information.", "Name of File") Title Prompt

115 Chapter 3 - VB 2005 by Schneider115 Using a Message Dialog Box for Output MsgBox(prompt, 0, title) MsgBox("Nice try, but no cigar.", 0, _ "Consolation") Title Prompt

116 Chapter 3 - VB 2005 by Schneider116 Masked Text Box Similar to an ordinary text box, but has a Mask property that restricts what can be typed into the masked text box.

117 Chapter 3 - VB 2005 by Schneider117 Input Mask Dialog Box

118 Chapter 3 - VB 2005 by Schneider118 Mask A Mask setting is a sequence of characters, with 0, L, and & having special meanings. 0 Placeholder for a digit. L Placeholder for a letter. & Placeholder for a character or space.

119 Chapter 3 - VB 2005 by Schneider119 Sample Masks State abbreviation: LL Phone number: 000-0000 Social Security Number: 000-00-0000 License plate: &&&&&&


Download ppt "Chapter 3 - VB 2005 by Schneider1 Chapter 3 – Fundamentals of Programming in Visual Basic 3.1 Visual Basic Controls 3.2 Visual Basic Events 3.3 Numbers."

Similar presentations


Ads by Google