CP2030 VBFC
Visual Basic For C++ Programmers
Lecture 1
Back To Index
Module Introduction
Structure Of Module
What Is Visual Basic
The Visual Basic Environment
Introduction To Controls, Events, Properties and Methods
A Simple Visual Basic Program
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 1
Introduction To The Module
Staff Names
D.I.Beardsmore
MU401
1461
P.I.Wilson
MU217
1806 CM1949
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
CM1940
Lec1 P 2
Structure Of The Module
Module consists of formal Lectures, Tutorials and Workshops
Lectures - 2 hrs approx.
Tutorials - 1 hour
In most cases questions will be set - time will be made available
for students to raise problems, and review lectures, etc
Workshops - 1 hours
Help with WS questions. Assessment sign offs.
Notes will be provided
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 3
Module Information
Refer to the timetable for Workshops and Tutorials.
WorkShop and Tutorial groups.
IT IS IMPORTANT TO KEEP TO YOUR ALLOCATED
GROUPS
Book list :
Visual Basic Quick Tutor - R Smythe
An Intro To Programming Using Visual Basic 4 - D. Schneider
Mastering VB - S.Saxon, D Saxon
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 4
Module Assessment
Assessment 70%
Four Assessment questions.
(Assessment 1 consists of a number of smaller questions)
Examination 30%
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 5
Aims of The Module
Provides an introduction to Windows programming - event
driven programming.
Design AND Programming in a Graphical User Interface
Environment
Introduces many of the most widely used controls - enables
students to fully develop a stand alone application.
Develops professional programming skills
Prepares students for industrial year
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 6
The Visual Basic module set.
CP1007
VB1
CP2028
VB2
CP2030
VB For C++
CP3013
App Dev in
VB
CP1000
S.P. in C++
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 7
What is Visual Basic?
Event-driven programming language
Powerful, Windows-based, screen designer.....
....linked to underlying functionality in
subroutines/functions
Increased functionality via third party VBX(Visual Basic
Extension - 16 bit) and OCX (Object Linking and
Embedding - 32 bit)
Rapid application development
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 8
Background to Visual Basic
Beginners
All-purpose
Symbolic
Instruction
Code
A simple programming language
Developed in 1963 as a resident language
Simple Language made it very popular
Most machines have own version of BASIC
DOS based (not windows)
Many version developed GWBASIC, CPMBASIC,… MSQuickBASIC(1982)
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 9
Windows Programming
Visual Basic developed in-house at Microsoft
Windows based
Applications developed within an environment
Powerful windows design for Graphical User Interfaces (GUIs).
Simple but powerful coding language
Quick to produce applications
Currently the most popular language for Windows applications
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 10
Differences between VB & C++
Students to add notes
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 11
Similarities between VB & C++
Students to add notes
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 12
Visual Basic Environment
Components of the VB design environment?
Menu
Bar
Project
Window
Control
Toolbox
Form
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Properties
Window
Lec1 P 13
VB Environment: Menu Bar
The Menu Bar consists of 3 elements the
– Title Bar, which holds the name of application, default if Microsoft Visual
Basic [design]
– Menu Bar, this is the link to Visual Basic’s menu facilities, each menu
option drops down into sub-menus
– Toolbar, contains icons which give access to the more commonly used
commands (which are also available through the menu bar)
Title bar
Menu Bar
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Toolbar
Lec1 P 14
VB Environment: Project Window
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 15
VB Environment: Properties Window
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 16
VB Environment: Control Toolbox
Pointer
Label
Group Frame
Check Box
Combo Box
Horizontal Scroll Bar
Timer
Directory List Box
Picture
Text Box
Command Button
Option/Radio Button
List Box
Vertical Scroll Bar
Drive List Box
File List Box
Shape
Line
Image
Data Control
Common Dialog
OLE
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Grid
Lec1 P 17
VB Environment: Context Sensitive Help
Context sensitive help is very useful
Select the item control that you want help on
Press the F1 key
F1
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 18
Visual Basic Program Overview
Design Tools
Screen Editor
Toolbox
Code Editor
Control/Event
Run/Debug
Other tools:
Paintbrush
etc..
Property Box
Colour Palette
Menu Design
Compiler/
Application
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Third Party
Controls
VBX/OCX
Lec1 P 19
Introduction To Controls, Events, Properties
& Methods
Controls - Processing
Graphical objects which can be placed onto a form (window)
– Controls have pre-defined ‘events’ eg. mouse click
– Code can be attached to an event
– When an event occurs
if code has been attached it is executed,
otherwise default processing takes place
Controls - Properties
– all controls have appropriate properties
such as Height, Name, Colour
– properties can be changed either at design-time or at run-time
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 20
Visual Basic Events
eg. Mouse Click, Key Press, Got Focus, Timer, etc.
Control events are pre-determined by the programmer
Each type of control has a relevant set of events
Eg. Events that
can happen to a
command button
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 21
Event Driven Programs
In normal programming your application is always in control
In GUI(Graphical User Interface) programming your
applications provide a number of service routines which are
triggered as required by the operating system
Events happen to a control/object
– mostly user generated events
– controls themselves can also cause events
Events are pre-set/pre-programmed
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 22
Control - Form(s)
At design stage controls are placed on the form
During execution the form control acts like any other windowmaximize, minimize, etc
An application can be make up from a number of forms
Like all other controls the form has properties - caption name,
size, colour, etc
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 23
Events and Visual Basic
Visual Basic is event-driven
You start with your user interface by drawing graphical
Controls on Forms
You then add program code for each of these controls which will
be run (or triggered) when a particular event is generated
Example event: Command Button Click
Trigger Event
Code Executed
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 24
Types of Events
Events can be classified as:
User generated
– (e.g. command button click)
Computer generated
– (e.g. specific time elapsed, from a timer control)
Program generated
– (i.e. program explicitly generates an event from within the code)
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 25
Controls Properties
Properties describe the characteristics of a control, these can be
– physical characteristics such as height, width and colour
– or its current state such as enabled, or links definitions to other
applications
Note the name and caption properties of a control have the same
default values but are actually different.
– The name is what code uses to reference the control, whereas
– the caption is purely what is written on the control so the user can
identify it
Good idea to rename controls to meaningful names
Properties can be changed either at design time or at run time
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 26
Changing Properties at Design Time
By selecting the properties window
properties can be set to values at design
time
A drop down list of the controls currently
on the form, allows the selection of a
control so its properties can be edited
All the properties of that control are
shown below, where they can be selected
for editing
The currently selected property of the
selected control is shown in the edit
window where it can be modified
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 27
Changing Properties at Run Time
To change a control’s property you assign the new property to it:
Control Name
Property
Command1.Enabled = False
Label1.ForeColor = QBColor(4)
To access a control on another form you should use the form name
to prefix the property name:
Form Name
Control Name
Property
Form1.Command1.Caption = “New Caption”
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 28
Controls Methods
A method is a routine which operates on a control, for example
control_name.SetFocus
would make control_name the currently selected control.
There are many methods available, we will only use a few of
them
The Events, Properties and Methods for controls can be found
under the controls description in Help. i.e. select a control then
press F1 to get the help for a control.
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 29
Controls - Label and Text Boxes
Labels are used for text output : Titles, Messages, and Prompts
- screen text that the user cannot change.
eg. Label1.Caption = “Heading For Program 1”
Text
Boxes are used for both text input and output.
eg.
Text1.Text = “Output to Text box1”
sName = Text2.Text (Text Input covered in week2)
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 30
Control - Command
Writing Code Under an Event
When we want our program to do something we have to write
code to do it, code is written under event procedures
We have to decide the control and its event procedure we want
the user to use to invoke the code
Command buttons are often used to invoke code. Normally for
command buttons we use their click event
In actual fact you can write code for any event from any control.
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 31
Developing a Simple VB Program
Students to add notes
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 32
Visual Basic Program Structure
Project File
– ‘.MAK’
Form Files
– ‘.FRM’
– ‘.FRX’
Modules
– ‘.BAS’
Custom Controls
– ‘.VBX’ files
Save As...
– Possible problem...
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 33
Saving The Project
When you come to save the project you will be saving a number
of files:
– FORM1.FRM
– PROJECT1.MAK
the form itself
the project make file
The best way to organise your projects is by keeping each
project in a separate directory.
You can create new directories using file manager
If you are working on the harddisk/network drive then you
should make sure that you copy the files back onto your floppy
disk when you’ve finished!
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 34
Question
Create an application to either display a students name with
either First name followed by Second name OR Second name
followed by first name.
CP2030 Visual Basic For C++ Programmers Copyright © University of Wolverhampton
Lec1 P 35