

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.








From the days of VB3, you no doubt recall the pain of retrievinganswers from a dialog form that you displayed from another form.The use of Globals was about the only
Writing add-ins for Visual Basic 4.0 can be challenging, rewarding,and tricky. If you are not careful writing add-ins, you can causeVB to do strange things and even abort. Although I’m
VB4 provides lots of new capabilities to use objects. Unfortunately,all of them require the object to be set beforehand, which isn’talways feasible. VB provides no way to see if an
APILOD16.EXE and APILOD32.EXE access the file WIN32API.TXT toallow the programmer to paste the TYPE declarations needed tocall the Win32 API. The file WIN32API.TXT incorrectly allots a LONG field to eachbit
Because setting the MousePointer property for a form only changesthe shape and does not prevent the application from acceptinguser input from the mouse or keyboard, I have developed this tip.The
Tired of loading icons or bitmaps or creating many images withthe several styles of pictures in form modules that blow up yourapplication and slow it down in VB3? If so,
When I replaced the Apex dbGrid, with the free upgrade, TDBGridS1.OCX,I got complaints about the behavior of the grids when I enteredor edited data in TDBGrid Standard. The cell pointer
Avoid “Couldn’t update; currently locked by user ‘name’ onmachine ‘machine’ ” error in VB4 when two or more applicationsaccess the same MS Access database table. For the given table, a
If you can’t think of anything nice to say about somebody, getto know them better.
When you use some custom controls like QuickPak Professional byCrescent it’s impossible to use the shortcut “Ctrl+V”for “Paste.” “Ctrl+V” allows you to pastetwo times the text of the clipboard. You
When I work with VB under Windows 95, I’ll often do somethingwith a program that causes Windows 95 to be unstable. Normally,I would shut down Windows 95 and restart to
This seemingly undocumented SQL table qualification syntax mightbe useful to access an external table by using the ‘IN’ keyword.I had used this ability before, but kept having trouble with joins(probably
To change the item’s location by dragging the mouse in a listbox, follow this tip: Sub List1_MouseDown (Button As _ Integer, Shift As Integer, X As _ Single, Y As
While the TreeView control with its associated Node objects isa far cry better than the VB3 Outline control, it lacks a methodfor sequentially traversing the tree, as if you were
A program originally written using the Borland C++ Compiler hastwo problems in Visual Basic 3.0, Standard Edition. This programuses trigonometry to calculate the distance between two points,when you know their
To highlight the row containing the active cell in a bound DBGrid,add the record set’s current bookmark to the grid’s SelBookmarkscollection: Private Sub DBGrid_RowColChange _ (LastRow As Variant, ByVal LastCol
The 32-bit API is much richer than the 16-bit API. However, theGetDriveType still reports networked CD drives as just a DRIVE_REMOTE(i.e., a networked drive). While true, it is not particularlyhelpful.
One of the trickier parts of handling date values is dealing withleap years. Everyone knows that every fourth year is a leap yearin which February has 29 days instead of
To prevent users from launching multiple instances of your application,check the PrevInstance property of VB’s App object; if the propertyis True, the program is already running. To activate the previousinstance,
In VB4 if you want to show a popup menu for a text box, a system-providedcontext menu appears first, and your popup menu does not appearuntil you close the system
A severe bug in VB4 appears when using the Databound Grid withmodal forms. Create 3 forms: form1, form2 and form3. Put a buttoncommand1 on each of the forms. In the
In VB4, each control array is its own collection and thereforehas a Count property. This was not the case in version 3. It isnow possible to loop through all of
When a procedure can operate on multiple types of controls, youcan use VB’s TypeOf function to determine a control type at runtime: Function myFunc(ctl as Control) ‘ This code works
Properly designed Windows programs should change their own colorsaccording to the system colors. One of the reasons why developerstend to forget that part of design is that it is not
Jet 3.0 includes an undocumented feature that lets you log Jet’soptimization plan of queries. To enable this feature, you mustcreate this registry key using Windows’ RegEdit program: HKEY_LOCAL_MACHINESOFTWAREMicrosoft _ Jet3.0EnginesDebug
This need was established by developing VB applications for 3270mainframe apps. A user typing in a 3270 edit field is automaticallyplaced into the next field once reaching the maximum number
When you write an If statement such as: If Category = “CM” or Category = “M2” or Category = “P1” or Category = “ZZ” thenProcessEmployeeEndif it can be simplified by:
If you have to assign True or False to a variable after testinga certain condition, then the If statement may be done away withaltogether. For example, if you have something
Most collections are zero-based. The COUNT property returns thenumber of members of a collection, as opposed to the highest membernumber. So when we see code that loops through all the
It’s a good idea to set your form variables to Nothing to recoverall memory that was allocated for the form module. Executing SetForm1 = Nothing for a loaded form, however,