Cover image for Delphi 6
Title:
Delphi 6
Author:
Eller, Frank.
Personal Author:
Uniform Title:
Delphi 6 nitty gritty. English
Publication Information:
London ; Boston : Addison-Wesley, [2002]

©2002
Physical Description:
xiii, 322 pages : illustrations ; 24 cm.
General Note:
Translation of: Delphi 6 nitty gritty.

Includes index.
Language:
English
Title Subject:
ISBN:
9780201758825
Format :
Book

Available:*

Library
Call Number
Material Type
Home Location
Status
Item Holds
Searching...
QA76.76.D47 E44713 2002 Adult Non-Fiction Central Closed Stacks
Searching...

On Order

Summary

Summary

Part of a series which provides the facts needed to get up and running in new programming topics. It can also be used as an ongoing reference book for all the fundamentals.


Author Notes

Frank Eller has been involved in computer programming for several years. To date, his preferred programming languages have been Pascal and its successor Delphi.


Table of Contents

Prefacep. xi
Acknowledgmentsp. xiii
Part I Start up!p. 1
1 Before you get started ...p. 3
1.1 What is Delphi?p. 3
1.2 Delphi is object-orientedp. 4
1.3 Delphi is event-orientedp. 5
1.4 Delphi's development environmentp. 5
1.4.1 Main windowp. 6
1.4.2 Object Inspectorp. 7
1.4.3 Object Treeviewp. 8
1.4.4 Code Editorp. 8
1.4.5 Code Explorerp. 8
1.5 Options in Delphip. 9
1.5.1 Environment Optionsp. 9
1.5.2 Editor Propertiesp. 11
1.5.3 Project Optionsp. 12
1.6 Programming helpp. 15
1.6.1 Code completionp. 15
1.6.2 Code parametersp. 16
1.6.3 Evaluation via tooltipsp. 17
1.6.4 Code templatesp. 17
1.6.5 Class completionp. 17
1.6.6 Hyperlinks in source codep. 17
1.6.7 To-Do Listp. 17
1.7 New in Delphi 6p. 18
1.7.1 Object Inspectorp. 18
1.7.2 Code Editorp. 19
1.7.3 Object Treeviewp. 19
1.7.4 Subcomponentsp. 20
1.7.5 New componentsp. 20
1.8 Choosing a versionp. 21
2 Hello World ... ?p. 23
2.1 Creating the interfacep. 23
2.2 Adding the base functionalityp. 24
2.2.1 Closing the programp. 24
2.2.2 Configuring the result fieldp. 24
2.2.3 Tab sequencep. 25
2.2.4 Text in the input fieldsp. 25
2.3 Adding the main functionp. 25
2.4 Preventing incorrect inputp. 28
Part II Take that!p. 31
3 Object Pascalp. 33
3.1 Basic language componentsp. 33
3.1.1 Symbols and separatorsp. 33
3.1.2 Reserved words and directivesp. 33
3.1.3 Variables and constantsp. 35
3.1.4 Data typesp. 37
3.1.5 Arraysp. 38
3.1.6 Setsp. 42
3.1.7 Recordsp. 42
3.1.8 Pointersp. 44
3.1.9 Objects and classesp. 46
3.2 Loopsp. 50
3.2.1 The for loopp. 50
3.2.2 The while loopp. 51
3.2.3 The repeat loopp. 52
3.3 Branchesp. 52
3.3.1 If then else branchingp. 52
3.3.2 Case branchingp. 53
3.3.3 Procedures and functionsp. 54
3.3.4 Passing parametersp. 55
3.3.5 Overloading procedures and functionsp. 56
3.4 Unitsp. 57
3.4.1 Structure of a unitp. 57
3.4.2 Mutual visibility of unitsp. 58
3.4.3 Units in Delphip. 59
4 Delphi's base elementsp. 61
4.1 Visual components libraryp. 61
4.1.1 Common propertiesp. 61
4.1.2 Component Palette Standard pagep. 64
4.1.3 Component Palette Additional pagep. 68
4.1.4 Component Palette Win32 pagep. 73
4.1.5 Component Palette System pagep. 79
4.1.6 Component Palette BDE pagep. 81
4.1.7 Component Palette Data Controls pagep. 84
4.1.8 Component Palette db Express pagep. 87
4.1.9 Component Palette Internet pagep. 89
4.1.10 Component Palette FastNet pagep. 92
4.1.11 Component Palette Dialogs pagep. 94
4.1.12 Component Palette Samples pagep. 102
4.2 Base classes of a programp. 103
4.2.1 TApplication classp. 103
4.2.2 TScreen classp. 104
4.2.3 TPrinter classp. 106
5 Basic elements of an applicationp. 109
5.1 Formsp. 109
5.1.1 Main form of the applicationp. 109
5.1.2 Displaying formsp. 109
5.1.3 Creating forms at runtimep. 111
5.1.4 Evaluating form contentsp. 111
5.1.5 Transparent formsp. 113
5.2 Menusp. 114
5.2.1 Menu Designerp. 114
5.2.2 Menu templatesp. 116
5.2.3 Important propertiesp. 116
5.3 Toolbarsp. 116
5.3.1 TToolbar propertiesp. 116
5.3.2 TToolbutton propertiesp. 116
5.3.3 Grouping buttonsp. 116
5.4 Status barp. 118
5.4.1 Splitting the status barp. 119
5.4.2 Modifying panels at runtimep. 119
5.4.3 Filling the status bar with textp. 120
5.5 TActionList componentp. 121
5.5.1 ActionList Editorp. 121
5.5.2 TAction propertiesp. 122
5.5.3 Defining the functionality of actionsp. 122
5.5.4 Adding imagesp. 123
5.6 TImageList componentp. 123
5.6.1 ImageList Editorp. 124
5.6.2 TImageList propertiesp. 124
5.7 Action Managerp. 125
5.7.1 Adding actionsp. 126
5.7.2 Using actionsp. 126
5.7.3 Modifying actionsp. 127
5.7.4 Mimicking Office 2000p. 128
6 Functions and proceduresp. 131
6.1 Dialog and message windowsp. 131
6.1.1 ShowMessagep. 131
6.1.2 InputBoxp. 132
6.1.3 InputQueryp. 132
6.1.4 MessageDlgp. 132
6.1.5 Application.Messagebox and Messageboxp. 134
6.1.6 SelectDirectoryp. 136
6.2 Arithmetical functionsp. 137
6.3 Files and foldersp. 139
6.4 Type conversionsp. 144
6.5 Date and timep. 146
6.6 Other functions and proceduresp. 148
Part III Go ahead!p. 151
7 Program development techniquesp. 153
7.1 String listsp. 153
7.1.1 List componentsp. 153
7.1.2 TStringList classp. 155
7.2 Working with one-line stringsp. 156
7.2.1 String formats in Delphip. 156
7.2.2 String functionsp. 157
7.3 Working with multiline textp. 160
7.3.1 TMemo componentp. 160
7.3.2 TRichEdit componentp. 162
7.4 Forms and componentsp. 166
7.4.1 Finding componentsp. 166
7.4.2 Sender parameterp. 167
7.4.3 Generating components dynamicallyp. 167
7.5 Framesp. 169
7.5.1 Creating a framep. 169
7.5.2 Properties and eventsp. 169
7.5.3 Example of a framep. 170
7.5.4 Accessing a frame's componentsp. 172
7.6 Checking entriesp. 173
7.6.1 Input field restrictionsp. 173
7.6.2 Predefined input masksp. 174
7.6.3 Global hotkeys queryp. 176
7.7 Working with filesp. 177
7.7.1 Typed filesp. 177
7.7.2 Non-typed (text) filesp. 178
7.7.3 Streamsp. 179
7.8 Registryp. 184
7.8.1 Structure of the Registry databasep. 184
7.8.2 TRegistry classp. 184
7.9 Threadsp. 186
7.9.1 Synchronize methodp. 186
7.9.2 Declaring a threadp. 187
7.9.3 Initializing a threadp. 188
7.10 Dynamic link librariesp. 189
7.10.1 Structure of a dynamic link library in Delphip. 189
7.10.2 Integrating a dynamic link libraryp. 191
7.11 Linking and embedding objectsp. 194
7.11.1 TOleContainer componentp. 194
7.11.2 Using TOleContainerp. 196
7.12 Dynamic data exchangep. 201
7.12.1 Dynamic data exchange componentsp. 202
7.12.2 Example dynamic data exchange projectp. 203
7.13 Drag and dropp. 207
7.13.1 Drag and drop eventsp. 208
7.13.2 Example projectp. 209
8 Delphi and databasesp. 211
8.1 Back to basicsp. 211
8.1.1 Structure of a databasep. 211
8.1.2 BDE database componentsp. 212
8.1.3 ADO componentsp. 214
8.1.4 dbExpress componentsp. 215
8.1.5 Data modulep. 216
8.2 Creating a database with BDEp. 216
8.2.1 Planning the databasep. 216
8.2.2 Creating the databasep. 218
8.2.3 Creating the interfacep. 224
8.2.4 Programming the functionalityp. 226
8.3 Master/detail databasesp. 234
8.3.1 Specifying the master databasep. 234
8.3.2 Creating a master databasep. 235
8.3.3 Linking databasesp. 237
8.3.4 Modifying the program interfacep. 238
8.3.5 Extending the functionalityp. 239
8.4 Other BDE functionsp. 241
8.4.1 Splitting a databasep. 241
8.4.2 Defining the start and endp. 241
8.4.3 Bookmarksp. 242
8.5 Database interfacep. 242
8.5.1 Structure informationp. 242
8.5.2 Restructuring the databasep. 243
8.5.3 Defining aliasesp. 245
8.6 ADOp. 246
8.6.1 Example ADO projectp. 246
9 Delphi and the internetp. 251
9.1 TWebBrowser componentp. 251
9.2 NetMasters componentsp. 252
9.2.1 Common propertiesp. 252
9.2.2 TNmFTP componentp. 252
9.2.3 TNmNNTP componentp. 254
9.2.4 TNmPop3 componentp. 256
9.2.5 TNmSMTP componentp. 258
9.3 Your own browserp. 259
9.3.1 Program interfacep. 259
9.3.2 Programming the functionalityp. 260
9.4 Creating a cgi counter with Delphip. 264
9.4.1 Basic requirementsp. 264
9.4.2 OnAction eventp. 265
10 Developing componentsp. 271
10.1 Back to basicsp. 271
10.2 Conventionsp. 272
10.3 Structure of a component classp. 273
10.4 Propertiesp. 275
10.4.1 Property variables and propertiesp. 275
10.4.2 Accessing a propertyp. 276
10.4.3 Publishing propertiesp. 276
10.4.4 Loading and saving property valuesp. 277
10.5 Windows messagesp. 278
10.5.1 Basic principles of messagesp. 278
10.5.2 Defining message-handling routinesp. 279
10.5.3 Declaring your own messagesp. 279
10.6 Eventsp. 280
10.6.1 Declaring eventsp. 280
10.6.2 Intercepting messagesp. 281
10.6.3 Publishing eventsp. 282
10.7 Methodsp. 283
10.7.1 Published methodsp. 283
10.7.2 Constructors and destructorsp. 283
10.8 Property editorsp. 284
10.8.1 Programming a property editorp. 284
10.8.2 Registering a property editorp. 286
10.9 Numerical componentsp. 286
10.9.1 Framework for the new componentp. 286
10.9.2 Features of the new componentp. 287
10.9.3 Component propertiesp. 287
10.9.4 Access methods for IntValuep. 288
10.9.5 Restricting the input fieldp. 290
10.9.6 Finished frameworkp. 291
10.9.7 Installing the componentp. 293
11 Error-handling and debuggingp. 295
11.1 Exceptionsp. 295
11.1.1 What is an exception?p. 295
11.1.2 Protecting source codep. 295
11.1.3 Exception-handlingp. 298
11.1.4 Silent exceptionsp. 300
11.2 Debuggingp. 300
11.2.1 Breakpointsp. 301
11.2.2 Evaluating variablesp. 303
11.2.3 Watched expressionsp. 304
11.2.4 CPU windowp. 304
Appendix
A ASCII tablep. 307
B Virtual key codesp. 309
Indexp. 313