Borland Delphi 6 Application Development
This is typically a five day course, although can be reduced
to only the required topics. The content of the course
manual is shown below.
If you are interested in having this course delivered at
your company, please contact
Brian Long.
Delphi 6 Application Development Course Manual Contents
Delphi Overview
Versions Of Delphi
Delphi Database Access
The Borland Database Engine (BDE)
dbGo
InterBase Express (IBX)
The Environment
The Form Designer
The Object Inspector
The Code Editor
Customising The Environment
Dragging And Docking
Useful Shortcut Keystrokes
General UI Keystrokes
Form Designer Keystrokes
Object Inspector Keystrokes
Editor Keystrokes
Building A User Interface
Components
Properties
Making Event Handlers
Naming Conventions
Setting Up The UI
Setting Up The Code
Online Help
Testing The Program
Code Completion
Code Parameters
Menus
Menu Templates
Implementing Exit Functionality
An Open Dialog
Shared Event Handlers
The Outliner
Exceptions - Don't Panic
Where To Find Help
Types, Constants And Variables
Simple Types
Integer Types
Real Types
String Types
Constants And Variables
Variable Definitions
Constant Definitions
More Complex Types
Structured Types
Pointer Types
Procedural Types
Object References And Class References
Exercise
Structure Of A Delphi Program
The Project File (.DPR)
Pascal Unit (.PAS)
Moving Projects To Other Locations
Files Generated By A Delphi Project
The Structure Of A Delphi Unit
Exercise
Comments And Compiler Directives
Comments
Compiler Directives
Compiler Switch Directives
Parameter Directives
Conditional Compiler Directives
Subroutines
Procedures And Functions
Overloaded Subroutines
Default Parameter Values
Parameter Passing Conventions
Passing Parameters By Value
Passing Parameters By Reference (var Parameters)
Const Parameters
IDE Facilities
Project Desktops
Global Desktops
Object Repository
Form Inheritance
Component Templates
Frames
To Do Lists
Database Table Access With The BDE
Tables, Data Sources And Data-Aware Controls
Connecting To SQL Databases
Master-Detail Relationships
Programming With TTable Components
Field Access
Field By Index
Field By Name
Field By Object
Field By Variant
Searching For Data
Incremental Searching
Ranges
Filters
Refreshing Multi-User Applications
Bookmarks And Scanning Records
Calculated Fields
Exercise
Database Queries With The BDE
Parameterised SQL
Nested Queries
Exercise
The BDE TDatabase Component
Customising Login Dialogs For RDBMS Connections
Getting A Value From The User
Formatting Strings Using Templates
Session Aliases
Transactions
Executing Queries
Other Data Access Topics
Data Modules
dbGo For ADO
The Connection Component
Connection Strings
Microsoft Data Link Files
The Table Component
The Query Component
InterBase Express (IBX)
Database Support Tools
Database Explorer
Data Dictionary
Database Desktop
Creating Tables
Query By Example
BDE Administrator
Creating Aliases
Global Object Variables
Application
Session
ClipBoard
Printer
ComServer
Mouse
Screen
Custom Mouse Cursors
More User Interface Topics
Propagating Properties
Diverting Tooltips
Multi-Page Dialogs
Automated Ways To Make MPDs
Making An MPD Manually
Parent/Child Relationships
Menu Images Through An ImageList
Actions And Action Lists
Exception Handling
What The Debugger Does By Default
What Are Exceptions?
Looking For An Exception To Handle
Trapping Exceptions With try/except Statements
Differentiating Between Exceptions
Chaining Back To The Old Exception Handler
Raising Exceptions
Dataset Validation Through Exceptions
Creating Custom Exception Types
Silent Exceptions
Disabling The IDE's Interest In Exceptions
Application Level Exception Handling
TApplicationEvents
Trapping Specific BDE Errors
Resource Protection
Exceptions And Resource Leaks
try/finally Statements
The Delegation Model
The Sender Parameter Of Many Event Handlers
Typecasting
Static Typecasting
Dynamic Typecasting, Using The "As" Operator
"Is" And "As" Doing Their Thing
Don't Use "Is" And "As" Together
The Tag Property
Dynamic Object Creation
Creating Component Objects
Component Ownership
Locating A Component's Implementation Unit
Displaying Visual Components
Setting Up Event Handlers
Events Are Properties
Explicitly Destroying Objects And Components
Component Names
Object Creation Summary
Creating Non-Component Objects
Accessing INI Files With TIniFile
Accessing The Win32 Registry With TRegIniFile
Multi-Form Applications
Showing Other Forms
Modeless Forms, Or Windows
Modal Forms, Or Dialogs
Resource-Friendly Multi-Form Applications
Linked Database Cursors
Graphics Programming
Using A TCanvas Object
Making Canvas Changes Persistent
Block Indenting Code
A Busy Application Looks Hung
Application.ProcessMessages Fixes It
Object Oriented Programming Concepts
Encapsulation
Inheritance
Polymorphism
Compiler Specifics
Putting It Into Practice
Data Hiding
Private Members Of A Class
Protected Members Of A Class
Public Members Of A Class
Published Members Of A Class
Properties
Defining Classes
Code Templates
Abstract Methods
Class Completion
Module Navigation
Implementing Inherited Classes
Instigating Polymorphism
What Polymorphism Means To The Compiler
Building A Test Harness For The Objects
Constructors And Destructors
Project Browser
Looking At A Class Hierarchy
Examining The Contents Of A Class
Finding All References To A Symbol
Tooltip Symbol Insight And Code Browser
Localised Inheritance
Unit Analysis
Using Delphi's Debugger
Breakpoints
Breakpoints With Conditions And Pass Counts
Watch Expressions
Tooltip Expression Evaluation
Debug Inspectors
What If? Scenarios
Program Execution
Call Stack
And Finally...