Borland Delphi 5 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 5 Application Development Course Manual Contents
      Delphi Overview
      
        Versions Of Delphi
        Delphi Database Access
        
          The Borland Database Engine (BDE)
          ADOExpress
          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
        The Outliner
       Shared Event Handlers
        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
      
 
  Database Form Wizard
  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
        
          The Data Module Designer
          Data Diagrams In The Data Module Designer
        
        ADOExpress
        
          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...