Previous | Index | Next 

[PRB] Hotkeys in SSTab caption work only if the form’s KeyPreview property is set to True

The .NET TabControl doesn’t support hotkeys in tab captions, at least not directly. The VB6SSTab control correctly shows hotkeys as underlined characters in caption. However, in order to enable the hotkey – that is, in order for the end user to be able to select a tab by pressing the corresponding Alt+key sequence – it is necessary that the parent form’s KeyPreview property be set to True.

The easiest way to abide by this requirement is setting the KeyPreview property to True at design time. You can either set this property in the VB6 IDE or assign the property during the migration by means of a WriteProperty pragma:

         '## WriteProperty KeyPreview, True

If the KeyPreview property is set to True at design-time you don’t need to do anything else, because the VB6SSTab control will automatically intercept the Form_KeyDown event and correctly select a tab corresponding to the hotkey pressed by the end user.

However, if for some reason you don’t want to set the KeyPreview property to True at design time, or if the SSTab control is hosted inside a UserControl, you need to manually forward all key presses to the SSTab control, as in the following example:

        Protected Overrides Sub OnKeyDown(ByVal e As KeyEventArgs)
            Me.SSTab1.ProcessHotKey(e)
            MyBase.OnKeyDown(e)
        End Sub

 

Previous | Index | Next