2. VB 6
• 0 Introduction
– background to VB, A hello World program
• 1 Core language 1
– Projects, data types, variables, forms, controls , a calculator program
• 2 Core language 2
– Conditional statements, exception handling, loops, arrays, debugging
• 3 Core language 3
– Functions, sub-routines, parameter passing, modules, scope, lifetime
• 4 Controls
– scrollbar, radio buttons, checkboxes, listboxes, timers, control arrays
• 5 Graphics
– primitives and image files
• 6 Forms
– Forms MDI, menus
• 7 Files and databases
– adding controls, using data files, using databases
• 8 Deployment
3. Hello World in VB
• Start VB
• New Project – Standard .exe
• Click the Button control on the ToolBox
and drag in the form
• Double click the new button to invoke
the code editor
• Enter code:
• Click the Run button
Private Sub Command1_Click()
MsgBox ("Hello world")
End Sub
Exercise – try this out
4. What is Visual Basic?
• Kemeny and Kurtz – Dartmouth
College 1964
• For students – simple interpreted
• Many versions since
• MS VB versions – more power
not so simple
• VBScript VBA .NET framework
• RAD especially of user interface
6. VB is not..
• Vendor independent
• Platform independent
• Based on a constant language definition
• Separated definition and IDE implementation
• Well documented
• (IMO) suitable for very large projects which must
be maintained over a long period of time
7. VB is ..
• easy to use
• suitable for RAD
• very marketable
8. Building an application - steps
• Commercial – data driven – waterfall
model – project management
• Science/engineering – underlying data
and physical model, algorithms, testing
• In VB – RAD – focus on user interface
prototyping and review.
9. Building an application - forms
• VB uses 'form' to mean Window
• Info on form stored in a .frm file
• VB system draws form based on that info
• Forms can be treated like classes in OOP
- later
10. Building an application - controls
• Buttons, text boxes, labels, check boxes..
• VB 'control' = user interface widget
• Some invisible – timer
• Controls have properties eg background
color
• Three kinds –
– standard
– non-standard MS controls (common dialog, tab)
and 3rd
party
– ActiveX controls written in-house
11. Building an application - modularity
• Spaghetti programming, structured
programming, OOP = increasing modularity
• In VB application constructed from modules
= files in project-
• Form modules
• BASIC modules
• Class modules
• Private and public control interaction
between modules
12. Building an application - objects
• Some OOP in VB – not pure OOP
• objects = things eg a form
• class = type of object eg a form design
• property = data value associated with
object
• method = something the object can do
13. Building an application – example of OOP
Dim f As Form2
Set f = New Form2
f.Show
f.BackColor = RGB(255, 0, 0)
Form2 is a class
f is an object – an instance of
class Form2
the Form2 class has a method called show
It has a property called
BackColor
14. Event-driven programming
• Standard approach for GUIs
• Contrast with old character interfaces – program
determines what happens
• In GUI, the user triggers what application does
(mostly)
• Event examples are key press, mouse move, timer
timeouts
• Correspond to native Windows Messages (next
slide)
• Event handler = a subroutine which will execute
when that event happens