Teclas rápidas para el control SSTAB

 

Fecha: 24/Ago/98 (20/Ago/98)
Autor: Javier Nieto
Jnieto@syseca.es


Autor: Javier Nieto Esteban
e-mail jnieto@syseca.es
Fecha: 16 Agosto 1998

TECLAS RÁPIDAS PARA EL CONTROL SSTAB

 

CONCEPTO

.
.Cuando en un formulario colocamos un conjunto de tabs, un efecto deseable sería que las teclas rápidas afectaran a las tabs, con lo que podríamos saltar fácilmente de una solapa a otra sin más que pulsar Alt + [letra]. El propio control (y de hecho, ninguno de los dos que implementan el efecto) disponen de esta facilidad.

CONSTRUCCIÓN DEL CÓDIGO

.
.Para implementar el manejador de teclas rápidas, nos valemos del evento KeyDown del formulario. Bastará con añadir a dicho formulario el siguiente código:

 

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

Dim AccessKey As String

Dim code As Integer

    AccessKey = "GPL"

    code = InStr(AccessKey, Chr$(KeyCode))

    If Shift = vbAltMask And code Then

            Tab1.TabIndex = code

    End If

End Sub

Como puede verse, en el ejemplo, contamos con un formulario de tres solapas. Los caption de las solapas son G y P y L, y el método de marcado de la tecla abreviada es similar al del resto de los controles.

No olvides poner la propiedad del control keypreview a true, para que los eventos de teclado sean tratados primero por la ventana y luego por el resto de controles.

Aunque personalmente prefiero el control sstab, el código puede ser adaptado en pocos segundos para trabajar con el control tabstrip, aunque en este caso, hay que tener en cuenta que las solapas no son contenedores reales y que no bastará con pasarnos a la solapa correspondiente. Lo mejor en estos casos es usar un control contenedor (un frame o un picture) y hacerlos visibles o invisibles según sea necesario. Sacado del MSDN (97)  


Comentarios, dudas y quejas a jnieto@syseca.es


ir al índice