

Since 1998, DevX has helped people start businesses, build websites, and provide enterprise technology to people globally. Interviewing the likes of Microsoft’s co-founder, Steve Ballmer, the publication brings comprehensive, reliable, and accessible insights to the Internet.








Use this algorithm to swap two integer variables: a = a Xor b b = a Xor b a = a Xor b
Place this code in the declaration section of a module: Public Sub Win95Shrivel(xForm As Form) ‘ Sets the form’s window status to ‘ minimized xForm.WindowState = 1End Sub Call it
When an image list is referenced by another object such as a toolbar, you can only add images to the imagelist. VB doesn’t allow deletes or changes to the size
I was developing a CGI application that read a database and pieced together the fields into a string forrepresentation as an HTML form. The surprise came when I found how
Code portability is extremely important, especially now that VBA is available in so many products. Someproblems might occur if you want to use VB4 or VB5 code in Access 8
Document the interface for your OLE server by using the Options buttonin the Object Browser. To provide more full-featured documentation, usea help file. Use the Object Browser to tie the
Pass as much data to and from the OLE server as possible in each call.Data transfer is fast, but calling is slow, especially with out-of-processservers. For example, you could pass
Don’t provide a method that terminates your server. Let the server automaticallyterminate when no references to the server exist. If you provide an Exitmenu option in an OLE server that
Test an in-process OLE server DLL by building it first as an out-of-processserver. This makes it possible to debug and test. Also, the stability ofthe entire application will be affected
The well-known Horner schema lets you calculate polynomial expressions efficiently. To calculate: A*x^N + B*x^(N-1) + . + Y*x + Z ( ^ means power ), simply write this expression
You can easily make a group of controls visible or invisible. At design time, select all controls you want tomake visible or invisible during the execution. Press F4, and assign
I often want to get to the General code section of a form quickly, either to hack module-level variables or tograb the procedure pull-down to find that function whose name
Do you sometimes need to format rounded numbers to a specific number of digits? You can accomplish thisin one step: n = 12.345Format(n, “0.00”)’returns “12.350”Format(n, “0.”)’returns “12.00”Format(0.55, “#.0”) ‘returns “.60”
If you set a form’s ControlBox property to False, the Minimize and Maximize buttons also become invisible.Suppose you want to provide functionality to the user to maximize and minimize the
Copy (Ctrl+C) and Paste (Crtl+V) functions are already includedin a text-box control, but what if you want to avoid these functions?You might suppose that you can handle Ctrl key combinations
Often, to create status-bar help, you place code in the mouse-moveevent procedures of controls to place text describing the controlon the status bar. Every time you update the text property,
If you need to analyze the performance of a Jet 3.0 query by thequery execution plan, you may do so by adding this registry keyand running regedit: \HKEY_LOCAL_MACHINESOFTWARE\_ MicrosoftJet3.0EnginesDebug For
In the “Determine the Class of YourObject with the TypeOfStatement” tip, the Desk and House objects have many propertiesin common. Instead of duplicating code by having a separate Printmethod for
vGive your ListView control in report view the sort functionalityof the Win95 Explorer. This code will allow you to sort by anycolumn. If your list is already sorted by the
Be aware that when using the Path property of the Applicationobject (App.Path), if your EXE is run from the root directoryof a drive, App.Path will return the drive letter and
Sometimes it is desirable to prevent a user from moving a form.A little known feature of Windows is that for any form, functionalitythat doesn’t appear in the control menu (ControlBox
Sometimes a runtime error only manifests itself after an EXE ismade and not in debug mode. This can be hard to track down, evenwith message-box statements. Use the code profiler
I like to use the Constant.txt file Microsoft has been kind enoughto provide. For a new project, copy Constant.txt to a new filesuch as MyConst.txt. Place MyConst.txt in the same
This code will prevent a beep when you hit [ENTER] or [TAB] ina text box whose maximum character limit has been reached: Sub Form_KeyPress (keyascii As Integer)’Eliminate beep if {ENTER}
In VB4 the TypeOf statement works with any valid object type,not just forms and controls. This allows you to pass objects ofdifferent classes to the same procedure for a class-specific
Here is a tip to help with missing or mispositioned text. Thisfailing code works fine with VB3: ClsPrint Spc(10); “Enter Your Name”;currentx = 0currenty = currenty + 1Print Spc(10); “Enter
A tip on page 48 of the March 1996 issue of VBPJ statesthat an ODBC error message occurs when using VB3 with the Access2.0 compatibility layer. An error occurs if
It is well known that VB3 is not always as conscientious as itshould be about unloading all the forms in an application whentheapplication terminates. Because unloading all the forms for
Just before performing your final ‘make EXE,’ switch your desktopcolor scheme and see just how many backgrounds you have hard-coded!(Sadly, several excellent shareware controls fail here, VBPJcontributors are guilty of