* VB-CODE (2)
Tip 144: Using Accelerator Keys with the TabStrip Control
August 31, 1995
The TabStrip control in Microsoft=AE Visual Basic=AE does not provide
support for using accelerator keys. This article explains how you can
functionality to your Visual Basic application.
Adding Accelerator Key Support to the TabStrip Control
The TabStrip control in Microsoft=AE Visual Basic=AE version 4.0 allows =
present information to your user in an organized manner. The TabStrip
allows you to present, or query the user for, information relating to a
concept. For example, if your user must choose certain options to
or her Visual Basic program, you could present these options by using
one tab of
a TabStrip control. Then, on another tab, you could ask the user for
his or her
name, company, and so on.
The user can select a tab either by pressing the TAB key to move the
the next tab or by clicking the desired tab. Although there is no
provided when using the TabStrip control, you can add accelerator keys
TabStrip control. This will allow your user to switch the focus between
pressing and holding down the ALT key and then pressing another key.
In the demonstration program below, the TabStrip control displays three
Control, Settings, and Parameters. Notice that an ampersand ("&") has
in the tabs' Caption property. At run time, the character immediately
the ampersand will be underlined. In the example program, the Control
be shown with the letter "C" underlined. Under the Microsoft Windows=AE
system, the underlined character tells users that they can press the
character while holding down the ALT key to invoke that option. In this
the user would press and hold down ALT and then press C to move the
focus to the
You can add this functionality to your Visual Basic program by trapping
that is pressed on the keyboard. This is done by first determining the
keycode value of the key that was just pressed. If this key is one of
you want to trap (C, S, or P in our example program below), set the
property of that tab to True. This moves the focus to that individual
the other hand, if the ALT key was not held down or if the key is not
the accelerator keys, no action is performed.
This program shows how to add support for accelerator keys to the
1. Create a new project in Visual Basic. Form1 is created by default.
its KeyPreview property to True.
2. Add the following code to the Form_Load event for Form1.
Private Sub Form_Load()
TabStrip1.Tabs(1).Caption =3D "&Control"
TabStrip1.Tabs.Add 2, , "&Settings"
TabStrip1.Tabs.Add 3, , "&Parameters"
3. Add the following code to the KeyDown event for Form1.
Private Sub Form_KeyDown(keycode As Integer, shift As Integer)
AccessKey$ =3D "CSP"
Code% =3D InStr(AccessKey$, Chr$(keycode))
If shift =3D vbAltMask And Code% Then
TabStrip1.Tabs(Code%).Selected =3D True
4. Add a TabStrip control to Form1. TabStrip1 is created by default.
Run the example program by pressing F5. The TabStrip control is
three tabs setone for Control, one for Settings, and one for
Parameters. You can
move the focus from one tab to another by pressing and holding down the
and then pressing the appropriate accelerator key (the underlined
for the new tab.