devxlogo

We are an award-winning tech entrepreneurship website where trusted experts can provide value globally.

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.

devxlogo

Trusted for 26 years

Over 30K Articles

1M+ Readers

Expert-reviewed

10K+ Tech Terms

As seen in:

microsoft logo
business_insider_logo
wired_logo
berkley
arstechnica_logo
hackernoon

The Latest

Positioning a Common Dialog

If you are you unhappy with Microsoft’s comment in the help (“Note:You cannot specify where a common dialog box is displayed”),but like the idea of common dialog controls, try this.

Sharp = Dressed Icons

To make icons look better, Windows 95 uses three standard-size icons;16-by-16, 32-by-32, and 48-by-48. These three standard sizes should beincluded in any ICO file you create for inclusion in your

An Improved User Tip

The User Tip submitted by Nick Bulka in the January 1996 issueof VBPJ was interesting, but, as with so much code, improvable: Sub TextHiLite( t as TextBox ) t.SelStart =

Disable the Default Popup Menu on Text Boxes

Some controls in VB4 and VB5, such as the TextBox control, have a default context menu that appearswhen you right-click on the control. If you want to pop up your

Create Multiple Levels of Directories

If your users have the option to type a directory where they wantfiles installed, they may type a directory that doesn’t existor a directory that is several levels below another

A Taskbar-Compliant Version of Centerform

To center a form, you only need one API call, no UDTs, and two constants. This solution is based on thefact that GetSystemMetrics reflects real estate taken up by the

ListView Controls Don’t Accept Numeric Keys

In a collection object, such as the ListItems collection from the ListView control, or simply a generic VBcollection object, you can specify a key to uniquely identify the item. Documentation

32-Bit GetModuleUsage Workaround

I have found a solution to the problem of GetModuleUsage not workingin 32-bit VB4. The TaskID returned by Shell can be used by AppActivatelike this: TaskID = Shell(“DOSAPP.EXE”, _ vbNormalFocus)

Creating Database Passwords in VB4

Jet 3.0 (32-bit VB4 only) includes a new security system basedon database passwords that you may use instead of the more complex,more secure, workgroup security system. This system allows youto

Set Columns in DBGrid At Design Time

Set the number of columns in VB4’s DBGrid at design time by right-clickingon the grid and selecting Edit from the menu. (The grid can now be editedinteractively at design time.)

Notify The System Of Changes

A new Windows 95-only API call notifies the system that you’ve changedsomething it should know about. The call, SHChangeNotify, is very handyin a number of cases. You might make this

Converting File Names

VB4’s commands for dealing with file names (such as KILL, MKDIR, andFILECOPY) support long file names without programmer interaction. A numberof the Win95 API functions will return only the short

Instant About Boxes

The ShellAbout API call provides a quick and easy way to show an aboutbox (using the standard Win95 format) without having to include an additionalform in your project. The call

Mouse Events Don’t Fire if Enable is False

MouseMove events don’t occur when the control’s Enabled property is set to False. My method tackles this problem and is useful when you want to display the Tooltips or Notes

Test For False Instead of Zero

If you’re checking a numeric value against 0, one option is to usethe “” operator: If iNumber 0 Then … End If It is faster, however, to check the variable

Create Temporary Files

I’m developing a database program that deals with many auxiliary files at same time. Everyone codingdatabase programs must create some temporary files to produce an output from SQL or a

Design Your Colors So User Can Change Them

Pay close attention to the color selections you make in your forms.Windows 95 gives the user more control over colors than previous versionsof Windows allowed. problems arise if the user

Opening Password-Protected Databases

Use the connect parameter of the OpenDatabase method to open adatabase that is password-protected in VB4-32. For example, thiscode opens the Secure database with a password of “dirt”: Dim wrk

DoEvents() And Preempitive Multitasking

Windows 95 is a preemptive multitasking system. As a result of this,no single application monopolizes the entire CPU at any given time. Manyof the DoEvents() calls previously used in Windows

Accurate Time Delay

This routine allows you to put a fairly accurate time delay, veryuseful for I/O routines and nice, graphic-delayed drawing routinesin your code: Sub Delay (milliseconds As Integer)’ This Routine uses

Emulating Overstrike Mode in Text Boxes

Windows text boxes always work in insert mode and don’t provide anoverstrike mode. However, overstrike mode can easily be emulated as shownhere: Sub Text1_KeyPress (KeyAscii As Integer) If KeyAscii >=

Speedy List Boxes

One way to speed list-box loading is to eliminate the constant redrawingrequired while loading. You can do this by calling the LockWindowUpdateAPI. LockWindowUpdate accepts an HWND as a parameter to

Understanding Unicode

VB4 introduces the use of double-byte characters. Most of this is transparentto the programmer and requires no special consideration. When calling APIfunctions or reading/writing to a file VB will handle

Streamline Your API Declares, Part 1

Most Windows API routines are functions and must be declared assuch, but in many cases we are not really interested in theirreturn value. The SendMessage function, for example, dependingon the

Double-Check Val Arguments

When using the Val function, VB has a quirk that causes a type mismatch error. For example, Val(“25%”)correctly returns 25, whereas Val(“2.5%”) misinterprets the string and returns a type mismatch

Showing “&” Character in Labels

If you want to show the character “&” instead of having it work as a marker for the access key, set theproperty “UseMnemonic” to False. This property is useful, for