1001 Visual Basic Programmer's Tips

by ; ;
Edition: 2nd
Format: Paperback
Pub. Date: 2001-04-25
Publisher(s): OnWord Press (Acquired Titles)
List Price: $79.95

Rent Book

Select for Price
There was a problem. Please try again later.

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

eBook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

1001 Visual Basic Programmer's Tips, 2E takes programmers from "square one" with Visual Basic 6. Building upon the basics, this new edition features expanded coverage of Visual Basic Script, including a focus on Active Server Pages for programmers to create web pages. Also introduced in this edition is a new section on Lightweight Directory Access Protocol - a new object-oriented way of storing data. All in all, this book covers the entire Visual Basic 6, making it the optimal choice for both new and professional programmers alike.

Table of Contents

An Introduction to Programming
1(1)
How Visual Basic Stores Source Files
2(1)
Creating an Executable Program
3(1)
Getting Started with the New Project Dialog Box
4(1)
Using the New Application Wizard
5(1)
Understanding Interface Types
6(1)
Using the VB Application Wizard to Create a Project Framework
7(1)
Selecting an Interface Type in VB Application Wizard
8(1)
Understanding Radio Buttons
9(1)
Selecting Menus in Application Wizard
10(1)
Using the Application Wizard to Create a Toolbar
11(1)
Using the Application Wizard to Add Resource Files
12(1)
Using the Wizard to Add An Internet Connection
13(1)
Understanding Controls
14(1)
Including Standard Forms
15(1)
Connecting to Databases Using the Wizard
16(1)
Finishing the Creation of Your New Wizard---Generated Project
17(1)
Reading The VB Application Wizard's Summary Report
18(1)
Saving Your New Wizard-Generated Project
19(1)
Creating Fully Executable Files Without Entering Any Code
20(1)
Understanding the Editing Window
21(1)
Understanding The Toolbox
22(1)
Understanding The Properties Window
23(1)
Understanding The Project Explorer
24(1)
Understanding The Form Layout Window
25(1)
Understanding The Editing Display Window
26(1)
Understanding Icons On the Toolbar
27(1)
Introducing the Visual Basic Menu Bar
28(1)
Using the File Menu
29(1)
Using the Edit Menu
30(1)
Using the View Menu
31(1)
Using the Project Menu
32(1)
Using the Format Menu
33(1)
Using the Debug Menu
34(1)
Using the Run Menu
35(1)
Using the Tools Menu
36(1)
Using the Add-Ins Menu
37(1)
Creating Forms
38(1)
Naming Forms
39(1)
Creating Code
40(1)
Understanding the End Statement
41(1)
Running Your Visual Basic Program
42(1)
Changing Form Captions
43(1)
Using the Me Object
44(1)
Creating an Executable from Your Code
45(1)
Understanding Syntax Errors
46(1)
Structuring a Visual Basic Program
47(1)
Writing Your Second Program
48(1)
Changing the Autosave Option
49(1)
Defining Just-In-Time Compilation
50(1)
Saving Project Files
51(1)
Understanding Procedures
52(1)
Adding Statements to Your Program
53(1)
Displaying Output On a New Line
54(1)
Using the Visual Basic Constants
55(1)
Visual Basic Does Not Consider Case
56(1)
Understanding Logic Errors (Bugs)
57(1)
Trapping Errors in Your Programs
58(1)
Breaking on All Errors
59(1)
Understanding the Program Development Process
60(1)
Commenting Your Programs
61(1)
Improving Your Program Readability
62(1)
Using Comments to Exclude Program Statements
63(1)
Beginning to Understand Scope
64(1)
Understanding the Way Windows Messages are Handled
65(1)
Maintaining Rigid Control of the Interface
66(1)
Understanding Variables
67(1)
Using The Dim Statement
68(1)
Declaring Module- and Form-Level Variables
69(1)
Declaring Procedure Variables
70(1)
Reconciling Variable Name Conflicts
71(1)
Using the Public Keyword with Variables
72(1)
Assigning a Value to a Variable
73(1)
Understanding Variable Types
74(1)
Declaring Multiple Variables of the Same Type
75(1)
Commenting Your Variables at Declaration
76(1)
Using Meaningful Variable Names
77(1)
Understanding Visual Basic's Keywords
78(1)
Understanding the Option Explicit Statement
79(1)
Understanding the Option Base Statement
80(1)
Understanding Variables of Type Integer
81(1)
Understanding Variables of Type Long
82(1)
Understanding Variables of Type String
83(1)
Understanding Variables of Type Fixed--Length String
84(1)
Understanding Variables of Type Single
85(1)
Understanding Variables of Type Boolean
86(1)
Understanding Variables of Type Byte
87(1)
Understanding Variables of Type Currency
88(1)
Understanding Variables of Type Date
89(1)
Understanding Variables of Type Double
90(1)
Understanding Variables of Type Object
91(1)
Understanding Variables of Type Variant
92(1)
Understanding Control Types
93(1)
Why Visual Basic Does Not Use Pointers
94(1)
Assigning Values to Floating--Point Variables
95(1)
Assigning Values to Variables of Type Integer and Long
96(1)
Assigning Values to Variables of Type String
97(1)
Assigning Values to Variables of Type Fixed--Length String
98(1)
Assigning Values to Variables of Types Single and Double
99(1)
Assigning Values to Variables of Type Boolean
100(1)
Assigning Values to Variables of Type Byte
101(1)
Assigning Values to Variables of Type Currency
102(1)
Understanding Variables of Type Object
103(1)
Assigning Values to Variables of Type Date
104(1)
Understanding Overflow
105(1)
Understanding Precision
106(1)
Assigning Quotes and Other Characters
107(1)
Using the Chr Function
108(1)
Using Debug.Print to Output Information
109(1)
Using the Str Function to Convert a Number to a String
110(1)
Using the Format Function to Convert a Number to a String
111(1)
Using the Format Function to Convert a Date to a String
112(1)
Basic Math Operations in Visual Basic
113(1)
Understanding Modulo Arithmetic
114(1)
Understanding Operator Precedence
115(1)
Forcing the Order of Operator Evaluation
116(1)
Adding and Substracting Values
117(1)
Understanding a Bitwise Or Operation
118(1)
Understanding the Xor Operator
119(1)
Understanding a Bitwise And Operation
120(1)
Understanding a Bitwise Eqv Operation
121(1)
Understanding a Bitwise Imp Operation
122(1)
Introducing Conditional Processing
123(1)
Introducing Iterative Processing
124(1)
Understanding How Visual Basic Represents True and False
125(1)
Testing a Condition With If--Then
126(1)
Understanding the Use of Parentheses in Conditional Processing
127(1)
Understanding Simple and Compound Statements
128(1)
Testing for Equality
129(1)
Performing Relational Tests
130(1)
Performing a Logical And to Test Two Conditions
131(1)
Performing a Logical Or to Test Two Conditions
132(1)
Performing a Logical Not Operation
133(1)
Performing a Logical Xor Operation
134(1)
Performing a Logical Eqv Operation
135(1)
Performing a Logical Imp Operation
136(1)
Assigning the Result of a Condition
137(1)
Declaring Variables Within Compound Statements
138(1)
Using Indentation to Improve Readability
139(1)
Testing Floating--Point Values
140(1)
Looping Forever
141(1)
Defining Constants
142(1)
Beware of If--If--Else
143(1)
Performing Statements a Specific Number of Times
144(1)
Parts of the For Statement Are Optional
145(1)
Decrementing Values in a For--Next Statement
146(1)
Controlling the For--Next Loop Increment
147(1)
For--Next Loops Are not Just for Integer Variables
148(1)
Understanding a Null Loop
149(1)
Understanding a Do Events Loop
150(1)
Dangers of an Infinite Loop
151(1)
Using Nested For--Next Loops
152(1)
Changing the Control Variable's Value
153(1)
Using Next within a Conditional Statement
154(1)
Ending a Loop Using the Exit For Statement
155(1)
Repeating One or More Statements Using a Do Loop
156(1)
Understanding the Parts of a Do Loop
157(1)
Using While--Wend For Loops
158(1)
Always Performing One or More Statements Using the Do Loop
159(1)
Repeating One or More Statements Using a Do Until Loop
160(1)
Ending a Loop Using Exit Do
161(1)
Branching with Goto
162(1)
Testing Multiple Conditions
163(1)
Understanding the Case Else Statement
164(1)
Visualizing a Visual Basic String
165(1)
How Visual Basic Stores a String
166(1)
How Visual Basic Stores Variable--Length Strings
167(1)
Understanding Zero--Terminated Strings
168(1)
How A Differs From a
169(1)
Using the Option Compare Text Switch
170(1)
Determining the Length of a String
171(1)
Copying One String Variable's
172(1)
Appending One String Variable's Contents to Another String Variable
173(1)
Appending n Characters to a String Variable
174(1)
Handling Oversized Strings
175(1)
Ignoring Case When Determining Whether Strings Are Equal
176(1)
Obtaining the First Occurrence of a Character Within a String Variable
177(1)
Finding the Last Occurrence of a Character in a String
178(1)
Counting the Number of Character Occurrences in a String Variable
179(1)
Reversing a String Variable's Contents
180(1)
Comparing Two Character Strings
181(1)
Comparing the First n Characters of Two Strings
182(1)
Converting a String Representation of a Number
183(1)
Locating a Substring Within a String
184(1)
Returning n Characters from a Point Within the String
185(1)
Counting the Number of Substring Occurrences
186(1)
Using the TextBox Control
187(1)
Using the Rich TextBox Control
188(1)
Using the Find Method of the Rich TextBox Control
189(1)
Understanding Methods
190(1)
Understanding Focus
191(1)
Obtaining the Rightmost Occurrence of a Substring
192(1)
Removing a Substring From Within a String
193(1)
Replacing One Substring with Another
194(1)
Removing Text Within a Rich TexBox Control
195(1)
Replacing Text Within a Rich TextBox Control with Other Text
196(1)
Determining Whether a Character is Alphanumeric
197(1)
Determining Whether a Character Is a Digit
198(1)
Determining Whether a Character Is Upper-or Lowercase
199(1)
Determining Whether a String is a Date
200(1)
Converting a Character to Uppercase or Lowercase
201(1)
Working with ASCII Characters
202(1)
Formatting String Variables
203(1)
Using Select Case with Strings
204(1)
Using a new-line Variable
205(1)
Returning Values Using Functions
206(1)
Specifying Parameter Types
207(1)
Understanding Local Variables
208(1)
Understanding Function Overhead
209(1)
Reducing Overhead by Declaring Parameter Types
210(1)
Where Visual Basic Places Local Variables
211(1)
Declaring Global Variables
212(1)
Using Public Instead of Global
213(1)
Why You Should Avoid Global Variables Within Your Programs
214(1)
Resolving Global and Local Variable Name Conflicts
215(1)
Better Defining a Variable's Scope
216(1)
Defining Procedures
217(1)
Defining Functions
218(1)
Understanding Call by Value
219(1)
Why Call by Value Prevents Parameter Value Change
220(1)
Understanding Call By Reference
221(1)
Changing a Parameter's Value
222(1)
Changing Only Specific Parameters
223(1)
Call by Reference Still Uses the Stack
224(1)
Function Variables that Remember
225(1)
Procedures that Remember
226(1)
How Visual Basic Initializes Static Variables
227(1)
Creating Errors with the Static Keyword
228(1)
Understanding Global versus Local Procedures
229(1)
Reusing Procedures
230(1)
Understanding Formal and Actual Parameters
231(1)
Understanding Scope
232(1)
Using Variant Parameters to Receive Unknown Values
233(1)
Using Variant Functions to Return Unknown Values
234(1)
Using Var Type with Variant Parameters
235(1)
Using the Type Name Member Function
236(1)
Using Var Type or Type Name With Returned Values
237(1)
Updating Global Variables within Functions
238(1)
Using Functions which Change Variables within Arithmetic Expressions
239(1)
Creating Private Procedures on a Form
240(1)
Calling Procedures from within Procedures
241(1)
Understanding Recursion
241(2)
Understanding the Recursive Factorial Function
243(1)
One More Recursive Example
244(1)
Display Values to Better Understand Recursion
245(1)
Direct and Indirect Recursion
246(1)
To Use or Not to Use Recursion
247(1)
Working With Dates
248(1)
Why Recursive Procedures Are Slow
249(1)
How to Remove Recursion
250(1)
Passing Constants as Parameters
251(1)
A Subroutine is a Procedure that Returns No Values
252(1)
A Subroutine is a Procedure that Returns Multiple Values
253(1)
Using Procedures Without Parameters
254(1)
Understanding Visual Basic's Categories of Scope
255(1)
Understanding Name Space and Identifiers
256(1)
Understanding Identifier Visibility
257(1)
Understanding Duration
258(1)
Functions That Support a Variable Number of Parameters
259(1)
Supporting a Variable Number of Parameters
260(1)
Creating a Function That Supports Multiple Parameters of Multiple Types
261(1)
Using the Optional Keyword
262(1)
Understanding the IsMissing Member Function
263(1)
Using Buffered Input
264(1)
Using Input Box to Receive Input
265(1)
Using the TextBox Control to Perform Buffered Input
266(1)
Reading a Character Using Direct I/O
267(1)
Clearing All Fields on The Screen
268(1)
Updating a Form's Display
269(1)
Positioning Your Cursor Using SetFocus
270(1)
Positioning Your Cursor Using Tab Index
271(1)
Displaying Output in Color
272(1)
Controlling Screen Colors
273(1)
Assigning a Background Color
274(1)
Creating a Reusable Math Module
275(1)
Using the Abs Function
276(1)
Using the Cosine/Secant
277(1)
Using the Sine/Cosecant
278(1)
Using the Arctangent
279(1)
Rounding a Floating-Point Value Up
280(1)
Working With an Exponential
281(1)
Calculating the Natural Log
282(1)
Calculating the Result of log10x
283(1)
Determining Maximum and Minimum Values
284(1)
Breaking a Floating-Point Value into Integer and Fractional Components
285(1)
Calculating the Result of xn
286(1)
Generating a Random Number
287(1)
Mapping Random Values to a Specific Range
288(1)
Seeding the Random Number Generator
289(1)
Calculating a Value's Square Root
290(1)
Using the Tangent of an Angle
291(1)
Performing a Net Present Value Calculation
292(1)
Performing a Rate Calculation
293(1)
Creating a Customized Math Error Handler
294(1)
Understanding Arrays
295(1)
Declaring an Array
296(1)
Visualizing an Array
297(1)
Understanding an Array's Storage Requirements
298(1)
Initializing an Array
299(1)
Accessing Array Elements
300(1)
Looping Through Array Elements
301(1)
Use Constants to Define Arrays
302(1)
Passing an Array to a Function
303(1)
Revisiting Arrays and Functions
304(1)
Passing Arrays to Procedures
305(1)
Determining How Many Elements an Array Can Hold
306(1)
Allocating Arrays Dynamically
307(1)
Creating Arrays From Delimited Strings
308(1)
Understanding Multidimensional Arrays
309(1)
Understanding Rows and Columns
310(1)
Accessing Elements in a Two-Dimensional Array
311(1)
Initializing Elements in a Two-Dimensional Array
312(1)
Determining the Amount of Memory a Multidimensional Array Consumes
313(1)
Looping Through a Two-Dimensional Array
314(1)
Traversing a Three-Dimensional Array
315(1)
Passing a Two-Dimensional Array to a Function
316(1)
Understanding How Visual Basic Stores Multidimensional Arrays
317(1)
Arrays of Structures of Arrays
318(1)
Searching an Array for a Specific Value
319(1)
Understanding a Binary Search
320(1)
Using a Binary Search
321(1)
Sorting an Array
322(1)
Understanding the Bubble Sort
323(1)
Putting a Bubble Sort to Use
324(1)
Understanding the Selection Sort
325(1)
Putting a Selection Sort to Use
326(1)
Understanding the Shell Sort
327(1)
Putting a Shell Sort to Use
328(1)
Understanding the Quick Sort
329(1)
Putting a Quick Sort to Use
330(1)
Problems with Previous Sorting Solutions
331(1)
Sorting an Array of Character Strings
332(1)
Sorting Arrays with Quick_Sort
333(1)
Searching an Array with Seq_One_Find
334(1)
Using the TypeName Member Function
335(1)
Searching a Sorted Array with Bin_Search
336(1)
Determining the Number of Array Elements
337(1)
Looping Through an Array of Character Strings
338(1)
Setting Optional Ranges for Arrays
339(1)
Understanding Structures
340(1)
A Structure is a Template for Variable Declarations
341(1)
A Structure Tag is the Structure's Name
342(1)
Declaring a Structure Variable
343(1)
Using the Public---Private Keywords With Structures
344(1)
Understanding Structure Members
345(1)
Visualizing a Structure
346(1)
Putting a Structure to Use
347(1)
Passing a Structure to a Function
348(1)
Changing a Structure Within a Function
349(1)
Structure Definitions Have Scope
350(1)
Initializing a Structure
351(1)
Performing Structure Input/Output
352(1)
Using a Nested Structure
353(1)
Structures That Contain Arrays
354(1)
Creating an Array of Structures
355(1)
Using Files, Directories, and Disks---The Easy Way and the Hard Way
356(1)
Using the DriveListBox Control
357(1)
Using the DriveListBox Control to Change the Drive
358(1)
The DirectoryListBox Control
359(1)
Changing the Default Directory
360(1)
Using the FileListBox Control
361(1)
Showing Only Some Files in the List
362(1)
Understanding the Common Dialog Control
363(1)
Using Patterns with the CommonDialog Control
364(1)
Setting the Default Path for the CommonDialog Control
365(1)
Returning the Selected File and Path
366(1)
Saving a Text File
367(1)
Canceling the Open or Save As Processes Using Cancel
368(1)
Understanding the Windows API
369(1)
Using the API Viewer
370(1)
Using the GetCurrentDirectory API Function
371(1)
Writing a Wrapper Function
372(1)
Using the SetCurrentDirectory API Function
373(1)
Using the GetDiskFreeSpace API Function
374(1)
Using the GetVolumeInformation API Function
375(1)
Using the GetDriveType API Function
376(1)
Trapping for a Drive Not Ready
377(1)
Renaming Files From Within Your Programs
378(1)
Deleting Files from Within a Program
379(1)
Deleting Directories from Within a Program
380(1)
Setting a File's Access Mode
381(1)
Determining a File's Size
382(1)
Using the Open Statement
383(1)
Using the Close Statement
384(1)
Using Sequential File Access to Read From a File
385(1)
Using the EOF Function When Reading Files
386(1)
Using Sequential File Access to Write To a File
387(1)
Using LOF and Loc to Read Binary Files
388(1)
Using Input and Input # to Read From Files
389(1)
Using Write # To Output to a Sequential File
390(1)
Revisiting Structures and File I/O
391(1)
Using Put to Write Data to a Random-Access File
392(1)
Using Get to Retrieve Records from a Random-Access File
393(1)
Using the Seek Statement to Move Through Random-Access Files
394(1)
Creating Temporary Files
395(1)
Getting the Windows Path
396(1)
Getting the System Path
397(1)
Minimize File I/O Operations
398(1)
Using the ChDrive and ChDir Statements
399(1)
Creating a Directory
400(1)
Removing a Directory
401(1)
Removing a Directory Tree Using Recursion
402(1)
Parsing a PathName
403(1)
Obtaining a File's Date and Time Stamp
404(1)
Using Dir to Locate Directories and Files
405(1)
Sorting the Returned Values for Dir Into Files and Directories
406(1)
Using Dir to Locate Files
407(1)
Copying Files from Within Your Programs
408(1)
Moving Files From Within Your Programs
409(1)
Searching for Files
410(1)
Using the FindFirstFile Function
411(1)
Finding the Remaining Occurrences with FindNextFile
412(1)
Searching the Entire Directory Tree
413(1)
Creating a User Interface With The Files Returned from a Find Operation
414(1)
Using the Findxxx Functions to Locate Directories
415(1)
Using the Find Functions to Recursively List All Directories in a Tree
416(1)
Removing a Directory Tree Revisited: Using Recursion
417(1)
Obtaining the Current System Date
418(1)
Obtaining the Current System Time
419(1)
Returning a Date Value Representing the Current Date and Time
420(1)
Delaying a Specific Number of Milliseconds
421(1)
Delaying an Approximate Number of Milliseconds
422(1)
Limitations of Sleep and DoEvents
423(1)
Determining Your Program's Processing Time
424(1)
Comparing Two Times Revisited
425(1)
Using DoEvents to Delay A Specific Number of Seconds
426(1)
Converting a Date to a String and Back
427(1)
Verifying a String as a Date
428(1)
Setting the System Date and Time
429(1)
Setting the Date and Time Using Integer Values
430(1)
Adding Time to a Date
431(1)
Segmenting a Date into its Component Parts
432(1)
Understanding the Single Document Interface
433(1)
Understanding SDI Forms
434(1)
Understanding the Show Method
435(1)
Understanding the Load Statement
436(1)
Understanding Unload and Hide
437(1)
Basics of Good Form Design
438(1)
Naming Forms
439(1)
Varying Form Layouts
440(1)
Understanding Control Arrays
441(1)
Creating Control Arrays
442(1)
Naming Control Arrays
443(1)
Understanding Form Arrays
444(1)
Understanding the Creation of an MDI Interface
445(1)
Creating a Form Array
446(1)
Using a Boolean Array to Manage the Form Array
447(1)
Using a Control Array to Create Objects at Run Time
448(1)
Removing Objects from a Control Array at Run Time
449(1)
Understanding Menus
450(1)
Using the Menu Editor
451(1)
Creating a Menu
452(1)
Adding Functionality to the Menu
453(1)
Using the Enabled Property with Menus
454(1)
Using the Checked Property with Menus
455(1)
Creating a Windowlist
456(1)
Understanding Accelerator Keys
457(1)
Using the Tile and Cascade Commands
458(1)
Understanding Menu Arrays
459(1)
Creating a Menu Array
460(1)
Understanding the Difference Between Menus and Pop-up Menus
461(1)
Creating a Pop-up Menu
462(1)
Adding Code to the Pop-Up Menu Options
463(1)
Implementing the Pop-up Menu
464(1)
Creating Intelligent Contextual Menus
465(1)
Using the Boldcommand Property
466(1)
Menus on Child Forms Transpose to the Parent Form
467(1)
Using Negotiation with Menus
468(1)
Displaying Multiple Modal Forms
469(1)
Displaying Modeless Forms After Displaying a Modal Form
470(1)
Scope of Procedures Within a Form
471(1)
Exposing Values to Outside Entities
472(1)
Using Public Events With Outside Entities
473(1)
Understanding the ActiveForm Property
474(1)
Understanding the Load, Initialize and Activate From Events
475(1)
Understanding the Resize Event
476(1)
Understanding the Query Unload and the Unload Events
477(1)
Understanding the Deactivate and LostFocus Form Events
478(1)
Understanding the Terminate Event
479(1)
The Refresh Method
480(1)
Controlling the Height and Width of Forms
481(1)
Understanding Containers
482(1)
Understanding Frames
483(1)
Using Containers to Manage the Form
484(1)
Using the GetSystemMetrics API Function
485(1)
Using GetSystemMetrics Together With Resize
486(1)
Using the Hide Method with SDI Forms
487(1)
Understanding the MouseMove Event
488(1)
The MousePointer Property
489(1)
Using the MouseIcon Property
490(1)
Using the Icon Property with Forms
491(1)
Using the Toolbar Control
492(1)
Understanding Objects and Collections
493(1)
Using the Buttons Collection and the Button Object
494(1)
Creating a Toolbar With Text Buttons
495(1)
Understanding the ImageList Control
496(1)
Using the ImageList and Toolbar Controls Together
497(1)
Using Toolbars in MDI Programs
498(1)
Toolbars on Both Parent and Child Forms
499(1)
Placing Toolbars only on the Parent Form
500(1)
Toolbars and ActiveForm
501(1)
Using Toolbars and Menus in Conjunction
502(1)
Maintaining a Constant Image Size
503(1)
Designing Custom Icons
504(1)
Distributing Icons With Programs
505(1)
Understanding the StatusBar Control
506(1)
Understanding the Panel Object, Panels Collection
507(1)
Creating a StatusBar Control
508(1)
Writing an UpdateStatusBar Subroutine
509(1)
Sectioning the Status Bar
510(1)
Using MouseMove With the Status Bar
511(1)
Using Multiple StatusBars
512(1)
Revisiting Public versus Private Functions
513(1)
Passing Object Variables to Procedures
514(1)
Passing Control Arrays Into Procedures
515(1)
Introducing Public Controls
516(1)
Sensing Keypresses with the KeyPress Event
517(1)
Using KeyPress with a TextBox to Receive a User Password
518(1)
Understanding the KeyDown and KeyUp Events
519(1)
Setting a Form's WindowState Property
520(1)
Controlling the Caption of a Form
521(1)
Creating an IsDirty Property
522(1)
Reviewing Forms
523(1)
Advanced Controls
524(1)
Revisiting the CommonDialog Control
525(1)
Using the CommonDialog Control to Print
526(1)
Printing Text to the Default Printer
527(1)
Understanding the Printer object, Printers collection
528(1)
Using the For Each-Next Construction
529(1)
Understanding the EndDoc Method
530(1)
Using the CommonDialog Control to Set Fonts
531(1)
Setting Fonts in a Rich TextBox with the CommonDialog
532(1)
Using the Change Event with Edit Fields
533(1)
Understanding Libraries and Reusable Object Code
534(1)
Understanding ActiveX DLLs
535(1)
Creating and Using Project Groups
536(1)
Displaying Predefined Error Messages
537(1)
Understanding Portability
538(1)
Branching and Returning Within a Procedure
539(1)
Using Structure Variables Instead of Constants
540(1)
Visual Basic's Predefined Constants
541(1)
Using Enumerated Types
542(1)
Putting an Enumerated Type to Use
543(1)
Understanding an Enumerated Value
544(1)
Assigning a Specific Value to an Enumerated Type
545(1)
Understanding Child Processes
546(1)
Using the Shell Function
547(1)
Using a Temporary File to Pass Data to the Child Process
548(1)
Using AppActivate to Activate the Child Process
549(1)
Using Shell to Run Programs Sequentially
550(1)
Using Break for Debugging
551(1)
Adding Watches
552(1)
The Watch Window
553(1)
Stepping Into Your Program Code
554(1)
Stepping Over a Procedure's Code
555(1)
Stepping Out
556(1)
Restarting the Program
557(1)
Setting Breakpoints Within the Program
558(1)
Understanding Labels
559(1)
Using Labels for Error-Trapping Routines
560(1)
Using Labels for Go To Loops
561(1)
Understanding Critical Errors
562(1)
Using the Timer Event to Autosave Information
563(1)
Understanding the Timer Control
564(1)
Understanding Invariant Code
565(1)
Understanding Code Compaction
566(1)
Understanding Loop Compaction
567(1)
Using Common Subexpression Elimination
568(1)
Grasping Visual Basic's Basic Types
569(1)
Understanding Derived Types
570(1)
Rules for Using Initializers
571(1)
Contrasting Declarations and Definitions
572(1)
Declaring Variables Where You Need Them
573(1)
Revisiting the Optional Keyword
574(1)
Revisiting the ParamArray Keyword
575(1)
Using Default Values with Optional Parameters
576(1)
Using Default Types
577(1)
Understanding Lazy (or Short-Circuit) Evaluation
578(1)
Creating an Instance of an Object with the New Operator
579(1)
Using Functions as Members Within Structures
580(1)
Different Structures with the Same Member Names
581(1)
Understanding Objects
582(1)
Understanding Object-Oriented Programming
583(1)
Understanding Why Visual Basic is not Truly Object-Oriented
584(1)
Understanding Visual Basic Classes
585(1)
Conceptualizing Classes
586(1)
Creating Classes Using the Class Builder Utility
587(1)
Understanding the Public Label
588(1)
Understanding Information Hiding
589(1)
Using the Private Keyword Within a Class
590(1)
Using Public and Private Data
591(1)
Public Methods Are Often Called Interface Functions
592(1)
Defining Class Functions
593(1)
Using the Property Let and Property Get Methods
594(1)
Understanding Object Instances
595(1)
Creating Object Instances
596(1)
Understanding Class Scope
597(1)
Creating an Array of Class Variables
598(1)
Using With-End With
599(1)
Understanding Encapsulation
600(1)
Revisiting Libraries
601(1)
Ordering Public and Private Members
602(1)
Understanding Default Scope with Class Modules
603(1)
Understanding the Static Store
604(1)
Understanding ActiveX
605(1)
Understanding the Difference Between ActiveX and OLE 2.0
606(1)
Using the WithEvents Property in a Dimension Statement
607(1)
Using the ActiveX Controls Provided with Visual Basic
608(1)
Using the Change Event
609(1)
Understanding the ComboBox Control
610(1)
Using the Change and Click Events with the ComboBox
611(1)
Using ComboBoxes to Change Information on a Form
612(1)
Deciding Between Combo and ListBoxes
613(1)
Understanding the MaskEdBox Control
614(1)
Using the MaskEdBox Control to Validate Data
615(1)
Revisiting Reusable Objects
616(1)
Placing Procedures
617(1)
Using a Control Event to Trigger Other Events
618(1)
Using LostFocus Together with ListIndex to Start Dependent Forms
619(1)
Understanding Forms as Classes
620(1)
Understanding an Entirely Dialog Box-Based Application
621(1)
Changing the Startup Location of a Program
622(1)
Understanding Initialization Routines
623(1)
Placing Global Variables and Procedures in Multiple Locations
624(1)
Using Functions to Return a User-Defined Class or Structure
625(1)
Understanding the Picture Box Control
626(1)
Using a PictureBox Control
627(1)
Understanding the Image Control
628(1)
Displaying Pictures on a Form
629(1)
Using the Shape Control
630(1)
Using the Line Control
631(1)
Using Checkboxes to Obtain Boolean Values
632(1)
Using Multiple Groups of Option Buttons on a Single Form
633(1)
Using Horizontal and Vertical Scroll Bars
634(1)
Understanding the Timer Control
635(1)
Understanding Custom Controls
636(1)
Using Custom Controls
637(1)
Revisiting Rich TextBoxes
638(1)
Creating the Basics of the Interface
639(1)
Adding Functionality to the MDN Program
640(1)
Adding the Find Dialog Box
641(1)
Improving the Multiple-Document Notepad Application
642(1)
Revisiting the Query-Unload Event
643(1)
Understanding the Relationship between the RichTextBox and the CommonDialog
644(1)
Understanding the Progress Bar
645(1)
Using the Progress Bar Control
646(1)
Using the Hourglass Mouse Pointer
647(1)
Using the Other MousePointer Properties
648(1)
Using Global Variables to Protect Against Interruptions
649(1)
Introducing Databases
650(1)
Understanding Database Access
651(1)
Fundamental Principles of Database Design
652(1)
Understanding Relational Databases
653(1)
Understanding Normalization
654(1)
Minimizing Your Database's Storage Requirements
655(1)
Protecting Your Database
656(1)
Understanding the System MDW File
657(1)
Introducing SQL
658(1)
Understanding how Access SQL is Different from ANSI SQL
659(1)
Getting Started with the Visual Data Manager
660(1)
Understanding DAO and ODBC
661(1)
Using the DAO Objects
662(1)
Using the SQL Create Table Statement
663(1)
Understanding and Formatting SQL Create Table Statements
664(1)
Understanding the Execute Method
665(1)
Creating Indexes Using Constraint
666(1)
Using the SQL Create Index Statement
667(1)
Determining Which Field to Index
668(1)
Understanding Primary Keys
669(1)
Understanding the Workspace Object
670(1)
Using the Open Database Method
671(1)
Creating a New Database
672(1)
Understanding the Database Object
673(1)
Understanding the Recordset Object
674(1)
Using the OpenRecordset Method
675(1)
Understanding the SQL Select Statement
676(1)
Retrieving Recordsets
677(1)
Understanding the Order By Clause
678(1)
Understanding the Where Clause
679(1)
Understanding Inner Joins
680(1)
Understanding Left and Right Joins
681(1)
Understanding Set with Databases
682(1)
Understanding the QueryDeef Object
683(1)
Using the RecordCount Property
684(1)
Understanding the Move Methods
685(1)
Using the BOF and EOF Properties
686(1)
Determining if a Recordset is Empty
687(1)
Using the Find Methods
688(1)
Using the Seek Method
689(1)
Understanding Bookmarks
690(1)
Using Bookmarks
691(1)
Using Scratch Recordsets
692(1)
Understanding Recordset Creation Errors
693(1)
Understanding Groups
694(1)
Understanding Users
695(1)
Understanding Permissions
696(1)
Understanding DAO Documents and Containers
697(1)
Adding New Records
698(1)
Using the Update and Edit Methods
699(1)
Using the Requery Method
700(1)
Validating Data
701(1)
Understanding Transaction Processing
702(1)
Using Begin Trans and CommitTrans
703(1)
Using the Rollback Method
704(1)
Understanding the Data Control
705(1)
Using the Data Control with Stored Queries
706(1)
Handling BOF and EOF with the Data Control
707(1)
Understanding the RecordSource Property
708(1)
Understanding Data-Bound Controls
709(1)
Using Multiple Data Controls
710(1)
Understanding the Data-Bound Grid Control
711(1)
Using the Data-Bound Grid Control
712(1)
Sizing the Width of the Data-Bound Grid
713(1)
Placing a RecordCount Caption in the Data Control
714(1)
Changing the RecordCount Caption Using the Grid Control
715(1)
Understanding the Data-Bound ListBox Control
716(1)
Using the Data-Bound List Control
717(1)
Linking the DBList Control to Another Control
718(1)
Understanding the Data-Bound ComboBox Control
719(1)
Using the Data-Bound ComboBox Control
720(1)
Understanding the Clone Method
721(1)
Using the Clone Method
722(1)
Using the DataChanged Property
723(1)
Understanding SQL-Transact Statements
724(1)
Understanding Update Queries
725(1)
Using an Update Query
726(1)
Understanding Delete Queries
727(1)
Understanding Union Queries
728(1)
Understanding the Group By Statement
729(1)
Using the Group By Statement
730(1)
Understanding the SQL Aggregate Functions
731(1)
Using the Sum Statement
732(1)
Understanding the Having Statement
733(1)
Using Variables in Queries
734(1)
Creating New Queries Using a Query Result
735(1)
Using On Error-Resume with SQL Queries
736(1)
Preventing Errors By Checking Values
737(1)
Creating Backups of Databases
738(1)
Introducing Client-Server Databases
739(1)
Understanding Remote Data Objects
740(1)
Understanding the RemoteData Control
741(1)
Creating Recordsets with the RemoteData Control
742(1)
Understanding the RemoteData Constants
743(1)
Understanding the rdoEnvironment Object
744(1)
Establishing a Remote Data Connection
745(1)
Maintaining Information About an Open Connection
746(1)
Understanding the Field Object
747(1)
Determining When to Use Ordinal Numbers with Collections
748(1)
Using Field Names to Manage Databases
749(1)
Understanding Record Locking
750(1)
Saving Records from Unbound Controls
751(1)
Updating Records from Unbound Controls
752(1)
Revisiting the Importance of Databases
753(1)
Understanding the TreeView Control
754(1)
Understanding the Node Object
755(1)
Using the TreeView Control
756(1)
Understanding the Add Method of the Nodes Collection
757(1)
Adding Images to the TreeView Control
758(1)
Using the ProgressBar while Populating the TreeView Control
759(1)
Filling the TreeView Control From a Recordset
760(1)
Understanding Visual Basic and the Internet
761(1)
Understanding the MSComm Control
762(1)
Understanding the CommEvent Property
763(1)
Using the MSComm Control
764(1)
Understanding the OnComm Event
765(1)
Using the OnComm Event
766(1)
Understanding the RThreshold and SThreshold Properties
767(1)
Transmitting Data with the MSComm Control
768(1)
Receiving Data Using the MSComm Control
769(1)
Creating a Simple Terminal Program
770(1)
Creating Automated Transmission Events
771(1)
Understanding the Winsock Control
772(1)
Using the Winsock Control
773(1)
Understanding the GetData Method
774(1)
Understanding the SendComplete and SendProgress Events
775(1)
Returning a Handle from a Winsock Contro
776(1)
Using the Winsock Control on the Server Machine
777(1)
Returning the Current State of the Winsock Control
778(1)
Understanding the Internet Transfer Control
779(1)
Understanding the Execute Method
780(1)
Using Execute with HTTP Commands
781(1)
Using Execute with FTP Commands
782(1)
Ensuring your Name and Password are Maintained
783(1)
Connecting to the Internet
784(1)
Navigating the FTP Server
785(1)
Using Get to Retrieve a File from an FTP Server
786(1)
Writing to the FTP Server
787(1)
Writing an Automatic FTP Upload and Retrieve Program
788(1)
Writing an FTP Browser
789(1)
Understanding the WebBrowser Control
790(1)
Using the WebBrowser Control
791(1)
Understanding the Navigate Method
792(1)
Understanding the NavigateComplete Event
793(1)
Using the Location URL Property
794(1)
Using the ProgressChange Event
795(1)
Using the LocationName Property
796(1)
Understanding the DownloadBegin and DownloadComplete Events
797(1)
Stopping a Page Download
798(1)
Accessing FTP From Within the WebBrowser Control
799(1)
Creating Multiple Web Browsers
800(1)
Setting a Home Page
801(1)
Moving Back and Forward
802(1)
Writing the Visual Basic Internet Browser
803(1)
Revisiting ActiveX
804(1)
Understanding the Different Types of ActiveX
805(1)
Determining Whether to use an ActiveX Control, EXE, or DLL
806(1)
Understanding the UserControl Object
807(1)
Using Visual Basic to Create Controls
808(1)
Understanding Visual Basic Control Creation Edition
809(1)
Understanding ActiveX Security
810(1)
Signing ActiveX Controls
811(1)
CABbing ActiveX Controls
812(1)
CABbing a Sample ActiveX Control
813(1)
Using the Wizard to Create an ActiveX Control
814(1)
Understanding the Create Custom Interface Members Dialog Box
815(1)
Mapping Functionality
816(1)
Setting Attributes
817(1)
Completing the Wizard
818(1)
Beginning to Create the ActiveX Control
819(1)
Making the Control Functional
820(1)
Testing the Control
821(1)
Understanding ActiveX Control Events
822(1)
Understanding an ActiveX Control's Lifetime
823(1)
Responding to non-LifeTime Events
824(1)
Understanding the RaiseEvent Statement
825(1)
Using the Event Statement
826(1)
Adding Functionality to the Control
827(1)
Executing the ColorfulCmdButton Control's Container
828(1)
Understanding the Property Page Wizard
829(1)
Using the Property Page Wizard
830(1)
Understanding ActiveX Documents
831(1)
Creating an ActiveX Document
832(1)
Targeting a Container for your ActiveX Document
833(1)
Discovering the Target Application's Object Model
834(1)
Understanding Variations in the Object Model
835(1)
Understanding the UserDocument Object
836(1)
Using the UserDocument Object
837(1)
Testing the ActiveX Document
838(1)
Debugging the FirstACXDoc ActiveX Document
839(1)
Adding a Second ActiveX Document to the Project
840(1)
Running the Two Document Project
841(1)
Understanding ActiveX DLL Files
842(1)
Creating the Class for your ActiveX DLL File
843(1)
Creating the Properties and Methods for the Happy Class
844(1)
Initializing the Class
845(1)
Creating the MyTest Project
846(1)
Instantiating the MyTest Class
847(1)
Executing the MyTest Project
848(1)
Understanding Object Lifetimes
849(1)
Adding the SelfAbsorbed Property to the MyTest Class
850(1)
Understanding Circular References
851(1)
Understanding ActiveX Component Naming Guidelines
852(1)
Understanding Well-Behaved Components
853(1)
Understanding VB Script
854(1)
Understanding the Benefits of VB Script
855(1)
Using VBScript Within HTML
856(1)
Responding to Events in VBScript
857(1)
Executing the Hello. HTML File
858(1)
Commenting VBScript
859(1)
Implementing Mathematical Functions in VBScript
860(1)
Implementing Events and Operations
861(1)
Using Option Explicit with VBScript
862(1)
Using Dim in VBScript
863(1)
Using VBScript with ActiveX Controls
864(1)
Accessing ActiveX Controls From VBScript
865(1)
Using the Label and Timer Controls within an HTML Page
866(1)
Referencing ActiveX Controls
867(1)
Understanding the Param Name Tag
868(1)
Registering ActiveX Controls
869(1)
Using the Registry Editor to Discover Class Ids
870(1)
Using the WebBrowser Control within an HTML File
871(1)
Active Sever Pages
872(1)
Responses and Request in ASP
873(1)
Making Use of Querystring Parameters
874(1)
A formatting Shortcut
875(1)
Back Where You Came From
876(1)
Understanding .ini files
877(1)
Using the WritePrivateProfileString API With Files
878(1)
Using the GetPrivateProfileString API with .ini Files
879(1)
Using the GetPrivateProfileInt API with .ini files
880(1)
Using .ini Files with Distributed Programs
881(1)
Understanding the Limitations of .ini Files
882(1)
Understanding the System Registry
883(1)
Understanding the SaveSetting Function
884(1)
Understanding the GetSetting Member Function
885(1)
Using the SaveSetting and GetSetting Statements
886(1)
Saving Form Sizes and Positions in the Registry
887(1)
Passing Variables Between Programs within the Registry
888(1)
Using the DeleteSetting Function
889(1)
Using the GetAllSettings Function
890(1)
Using API Functions with the Registry
891(1)
Understanding the RegOpenKeyEx API Function
892(1)
Understanding the RegQueryValueEx Function
893(1)
Understanding the RegCloseKey Function
894(1)
Using the API Functions When Opening Forms
895(1)
Understanding the RegCreateKeyEx Function
896(1)
Understanding the RegSetValueEx Function
897(1)
Using RegSetValueEx and RegCreateValueEx
898(1)
Capturing Registry Errors
899(1)
Deleting Keys and Values Using API Functions
900(1)
Considering Registry Access
901(1)
Understanding Conditional Compilation
902(1)
Understanding the #Const Statement
903(1)
Understanding #If-Then-#Else
904(1)
Using Conditional Compilation
905(1)
Understanding the GetWindowsDirectory API Function
906(1)
Understanding the GetSystemDirectory API Function
907(1)
Using the GetWindow Function
908(1)
Finding a Window's Name
909(1)
Exporting Your Application
910(1)
Understanding the Visual Basic Setup Wizard
911(1)
Selecting a Project File to Distribute
912(1)
Selecting the Distribution Media
913(1)
Ensuring that all Files are in the Distribution List
914(1)
Saving Installation Templates
915(1)
Generating Your Distribution Media
916(1)
Installing the Program at the User's Computer
917(1)
Creating an Internet Distribution
918(1)
Reconsidering the Application Wizard
919(1)
Using Application Wizard to Generate Standard Forms
920(1)
Understanding the Splash Screen
921(1)
Understanding the About Box
922(1)
Adding Database Forms Using the Wizard
923(1)
Understanding Crystal Reports
924(1)
Using Crystal Reports
925(1)
Selecting a Data Source for Your Report
926(1)
Adding Fields to Your Report
927(1)
Grouping Records within Your Report
928(1)
Totaling and Counting Grouped Fields
929(1)
Selecting Records and Styling the Report
930(1)
Modifying the Report
931(1)
Moving, Resizing, Formatting and Deleting Fields
932(1)
Changing the Sort Sequence of Report Data
933(1)
Correcting the Sort and Group Order
934(1)
Creating Custom Groups
935(1)
Working with Summarized and Totaled Fields
936(1)
Inserting Subtotals
937(1)
Inserting a Grand Total
938(1)
Inserting a Summary
939(1)
Selecting Records
940(1)
Returning the Top N Records in a Group
941(1)
Creating Formulas
942(1)
Adding a Graph/Chart to Your Report
943(1)
Inserting OLE or ActiveX Objects into Your Report
944(1)
Adding or Changing a Report Title
945(1)
Understanding the Crystal Report Engine
946(1)
Understanding the Crystal ActiveX Control
947(1)
Using the Crystal ActiveX Control
948(1)
Understanding the Icons on the Crystal Window
949(1)
Limitations of the Crystal Reports Control
950(1)
Extending Visual Basic
951(1)
Revisiting the Object Model
952(1)
Understanding Add-Ins
953(1)
Creating an Add-In
954(1)
Accessing the Extensibility Model
955(1)
Creating the Project Components
956(1)
Understanding the IDTExtensibility Interface
957(1)
Understanding the OnConnection Function
958(1)
Dissecting the OnConnection Code
959(1)
Understanding the AddToAddInCommandBar Function
960(1)
Customizing the Connect Module
961(1)
Adding the Final Component
962(1)
Completing the Add-In's Design
963(1)
Adding the Add-In to the .ini File
964(1)
Loading Your Add-In
965(1)
Troubleshooting the Add-In
966(1)
Understanding ActiveX Exe
967(1)
Differentiating Between In-Process and Out-Of-Process Components
968(1)
Understanding Threads
969(1)
Understanding Asynchronous Processing
970(1)
Understanding Asynchronous Notification Using Events
971(1)
Understanding Asynchronous Notification Using Call-Back Methods
972(1)
Using Call-Backs With Multiple Clients
973(1)
Deciding Between Events or Call-Backs for Notifications
974(1)
Understanding Type Libraries
975(1)
Understanding Default Interfaces
976(1)
Revisiting GUIDs
977(1)
Understanding Version Compatibility
978(1)
Creating an ActiveX EXE
979(1)
Understanding Modality with Out-Of-Process Components
980(1)
Beginning the Creation of the Test Project
981(1)
Adding Code to the Test Project
982(1)
Viewing TestForm Modally
983(1)
Viewing TestForm Modelessly
984(1)
Using Asynchronous Notifications
985(1)
Completing the Code For the Event Notification
986(1)
Writing the Client Program
987(1)
Considering How to Handle Multiple Clients
988(1)
Using the Connector Object
989(1)
Recognizing the Bug in Connector
990(1)
Using Asynchronous Call-Back Methods
991(1)
Creating the Lunch TimeMonitor Executable
992(1)
Distributing the ActiveX EXE
993(1)
Understanding Single Threads
994(1)
Ordering Your Development of ActiveX Components
995(1)
Revisiting Multithreading
996(1)
Understanding Apartment-Model Threading
997(1)
Understanding Reentrancy
998(1)
Understanding Binary Compatibility
999(1)
Avoiding Version Trees
1000(1)
Avoiding Version Compatibility Messages
1001

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.