710 likes | 1.37k Views
Chapter 2 –Visual Basic, Controls, and Events. Main Topics: History of the Visual Basic Language Anatomy of a VB Application Steps in a Developing VB Application. Visual Basic 2010. Language used to create Windows applications. Provides a G raphical U ser I nterface or GUI.
E N D
Chapter 2 –Visual Basic, Controls, and Events • Main Topics: • History of the Visual Basic Language • Anatomy of a VB Application • Steps in a Developing VB Application
Visual Basic 2010 • Language used to create Windows applications. • Provides a Graphical User Interface or GUI. • The sequence of instructions executed in the program is controlled by events.
Evolution of Visual Basic • Version 1.0 – 1991 Version 2.0 – 1992 • Version 3.0 – 1993 Version 4.0 – 1995 • Version 5.0 – 1997 Version 6.0 – 1998 • Visual Basic.NET – 2002 (NOT BACKWARD COMPATIBLE WITH EARLIER VERSIONS) • Visual Basic 2005 – November 2005 • Visual Basic 2008 – November 2007 • Visual Basic 2010 – April 2010
Anatomy of a VB Application • Graphical User Interface (GUI) • Form – a window containing controls. Usually only one per application (but not always) • Control – a GUI component that are placed on the form • Property – a data item related to a Control that affects its appearance • Event – an action (usually by a user) on a form or control that triggers program behavior
Anatomy of a VB Application • Underlying VB Code • Event Procedure – a subroutine that is triggered by an event • Other procedures – could be Functions or Subroutines (in general these are Methods) • Statements – could be assignments, control statements (decisions or loops), or calls to Functions or Subroutines
Sample Form Maximize or Restore Minimize Close Title Bar Overall Form Content Area (contains Controls
Sample Form Label controls Labels are used to display information to the user. User cannot edit these.
Sample Form TextBox controls TextBoxes are used to allow users the enter information
Sample Form Button controls Buttons are almost always used to trigger program actions
Another Sample Form list box These types of controls are used for providing choices to the user and allowing selection of one or more of these choices. radio buttons check boxes
Properties • Common control properties include • Color • Size • Text or image content • Font • Different controls have their own special properties as well • Two ways to manipulate a control’s properties: • Via the Properties window in Form Design • Via Code in the program
Events • Actions (usually, but not always, from the user) that trigger program behavior • Forms and all controls can generate events. There are many events for each type of object. • Examples: click a button, type text in a text box, load the form, select an item from a list box, etc.
How to Develop a Visual Basic Application • Create a Project • Design the Interface for the user. • Via the Form Design Editor • Determine which events the controls on the window should recognize. • All events can be seen in the Form Design Editor • Write the event procedures for those events. • In the Code Editor
New Project Dialog Box select click on OK button
Initial Visual Basic Screen If you don’t see a window, you can make it visible via the View menu.
Working with Controls in the Form Design View
Toolbox The Toolbox gives a list of all controls available to place on a form.
Properties Window selected control properties settings Description pane
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.
Setting the ForeColor Property • Click on ForeColor. • Click on button at right of settings box. • Click on Custom tab to obtain display shown. • Click on a color.
Font Property • Click on Font in left column. • Click on ellipsis at right of settings box to obtain display shown. • Make selections.
Button Control • The caption on the button should indicate the effect of clicking on the button. Text property
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. AutoSize is used primarily to obtain a multi-rowed label.
The Name Property • Used by the programmer to refer to a control in code • Setting for Name property near top of Properties window • Use appropriate 3-character naming prefix • See next slide • Use descriptive names
Control Name Prefixes By convention, the prefix of a control’s name is set to help identify what type of control it is. This is useful for helping to understand the program code.
Fonts • Proportional width fonts, such as Microsoft Sans Serif, use less space for "I" than for "W" • Fixed-width fonts take up the same amount of space for each character – like Courier New • Fixed-width fonts are used for tables.
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
Positioning Controls proximity line
Aligning Bottoms of Controls snap line
Aligning Middles of Controls snap line
Tab Order The tab indices determine the order in which controls receive the focus during tabbing. The control whose TabIndex property is set to 0 has the focus when the program begins.
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.
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 which raises an event. • What happens is determined by statements inside the event procedure.
Display Events for a Control • Select the control • Click on the Events button ( ) in the Properties window events button
Create an Outline for an Event Procedure • Double-click on a control or • Select a control, click on the Events button in the Properties window, and double-click on an event
Structure of an Event Procedure Private SubobjectName_event(...) HandlesobjectName.event statements End Sub (...)is filled automatically with (ByVal sender AsSystem.Object, ByVal e AsSystem.EventArgs) header These are parameters of the procedure…we’ll discuss in Ch5
Header of Event Procedure Private Sub btnRed_Click(…) Handles btnRed.Click Name of the event procedure. Identifies event
Code Editor This is the Code Editor for the form before any code has been written. Code Editor tab Form Designer tab
Sample Form txtFirst txtSecond btnRed Double-click on a control to create its event-procedure outline in the Code Editor
Code Editor When you double-click on a control, its default event procedure will be created in the Code Editor.
Code Editor Public ClassfrmDemo Private SubtxtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub End Class Once you have an event procedure, you can write the statements for the desired program behavior. In this example, we set the ForeColor property of the txtFirst text box to blue. This makes the letters in the text box blue.
IntelliSense Automatically pops up to help the programmer. txtFirst.
Code for Sample 2-3-Demo Private SubtxtFirst_Leave(...) Handles txtFirst.Leave txtFirst.ForeColor = Color.Black End Sub Private SubtxtFirst_TextChanged(...) Handles txtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) Handles btnRed.Click txtFirst.ForeColor = Color.Red End Sub
Code for Sample 2-3-Demo These events are the defaults for the associated controls. Double-clicking the control automatically creates them: Private SubtxtFirst_TextChanged(...) HandlestxtFirst.TextChanged txtFirst.ForeColor = Color.Blue End Sub Private Sub btnRed_Click(...) HandlesbtnRed.Click txtFirst.ForeColor = Color.Red End Sub
Code for Sample 2-3-Demo The Leave event is not a default for text boxes. To create it you need to go through the Events portion of the Properties window in the Form Design editor: Private SubtxtFirst_Leave(...) Handles txtFirst.Leave txtFirst.ForeColor = Color.Black End Sub
Event Procedure txtFirst.Leave • Select txtFirst on the form • Click on the Events button in the Properties window • Double-click on Leave