Sección de tutoriales y manuales vb
Un control TabStrip es como los separadores de un cuaderno o las etiquetas de un grupo de carpetas de archivo.
Mediante este se pueden definir varias páginas para la misma área de una ventana o cuadro de diálogo en su aplicación.
El control consiste en uno o más objetos Tab de una colección Tabs . Tanto en tiempo de diseño como en tiempo de ejecución puede cambiar la apariencia del objeto Tab estableciendo propiedades.
También puede agregar y quitar fichas utilizando la Página de propiedades del control TabStrip en tiempo de diseño o bien agregar y quitar objetos Tab en tiempo de ejecución mediante métodos.
Este control no es un contenedor como el sstab . Para contener las páginas reales y sus objetos, debe usar controles Frame u otro tipo de contenedores que coincidan con el tamaño del área interna compartida por todos los objetos Tab del control. Si usa una matriz de controles para el contenedor, puede asociar cada elemento de la matriz con un objeto Tab específico, como en el siguiente ejemplo:
Option Explicit Private mintCurFrame As Integer ' Marco activo visible Private Sub Form_Load() mintCurFrame = TabStrip1.SelectedItem.Index End Sub Private Sub Tabstrip1_Click() If TabStrip1.SelectedItem.Index = mintCurFrame Then Exit Sub ' No necesita cambiar el marco. End If ' Oculte el marco antiguo y muestre el nuevo. Frame1(TabStrip1.SelectedItem.Index).Visible = True Frame1(mintCurFrame).Visible = False ' Establece mintCurFrame al nuevo valor. mintCurFrame = TabStrip1.SelectedItem.Index End Sub
Nota Cuando agrupe controles en un contenedor, es mejor usar mostrar u ocultar en vez de usar el método Zorder para traer al frente un marco de objeto. Por otra parte, los controles que tengan asociadas teclas de acceso (ALT + tecla de acceso) aún responderán a los comandos de teclado, aunque el contenedor no sea el control más alto. Observe también que debe separar los grupos de los controles OptionButton para ubicar cada grupo en su propio contenedor, o por el contrario todos los controles OptionButtons del formulario se comportarán como un gran grupo de controles OptionButtons .
Sugerencia Utilice un control Frame con su BorderStyle establecido a None como el contenedor, en lugar de un control PictureBox . Un control Frame consume menos recursos que un control PictureBox .
Nota para la distribución El control TabStrip forma parte de un grupo de controles personalizados que se encuentran en el archivo MSCOMCTL.OCX. Para usarlo en su aplicación, debe agregar el archivo MSCOMCTL.OCX al proyecto. Cuando distribuya su aplicación, instale el archivo MSCOMCTL.OCX en el directorio SYSTEM de Microsoft Windows del usuario.
La propiedad Tabs del control TabStrip es la colección de todos los objetos Tab . Cada objeto Tab tiene propiedades asociadas con su estado y apariencia actuales. Por ejemplo, puede asociar un control ImageList con el control TabStrip y después usar imágenes en fichas individuales. También puede asociar una información sobre herramientas con cada objeto Tab .
Una colección Tabs contiene un conjunto de objetos Tab .
Sintaxis
tabstrip . Tabs ( índice )
tabstrip . Tabs . Item ( índice )
La sintaxis de la colección Tabs consta de las siguientes partes:
Parte | Descripción |
tabstrip | Una expresión de objeto que da como resultado un control TabStrip . |
índice | Un entero o una cadena que identifica de forma única a un miembro de una colección de objetos. El entero es el valor de la propiedad Index del objeto Tab deseado, mientras que la cadena es el valor de la propiedad Key del objeto Tab deseado. |
En tiempo de diseño, use los botones Insertar ficha y Quitar ficha de la ficha Fichas de la Página de propiedades para agregar y quitar objetos Tab de la colección Tabs .
La colección Tabs utiliza la propiedad Count para devolver el número de fichas de la colección.
Por ejemplo lo siguiente , añade cuatro tabs en tiempo de ejecución y luego visualiza mediante un MsgBox la cantidad
Dim i As Integer TabStrip1.Tabs.Clear For i = 1 To 3 TabStrip1.Tabs.Add , , "Ficha " & i Next MsgBox "Cantidad de tabs : " & TabStrip1.Tabs.Count
Para manipular los objetos Tab de la colección Tabs , utilice estos métodos en tiempo de ejecución:
Ejemplo de esto último
Un objeto Tab representa una ficha individual de la colección Tabs
Comentarios
Para cada objeto Tab puede emplear varias propiedades con el fin de especificar su apariencia y también puede especificar su estado con la propiedad Selected .
Lo siguiente , al presionar un CommandButton, determina si la ficha con indice 2 está seleccionada
If TabStrip1.Tabs(2).Selected = True Then MsgBox "SI Está seleccionada", vbInformation Else MsgBox "NO Está seleccionada", vbInformation End If
Lo siguiente lo que hace es seleccionar una ficha mediante código, usando la propiedad Selected y colocandola en true
En este caso selecciona el tab con indice 4
TabStrip1.Tabs(4).Selected = True
En tiempo de diseño, use los botones Insertar ficha y Quitar ficha de la ficha Fichas en la Página de propiedades del control TabStrip para insertar y quitar fichas, y utilice los cuadros de texto para especificar cualquiera de estas propiedades para un objeto Tab : Caption , Image , ToolTipText , Tag , Index o Key . También puede especificar estas propiedades en tiempo de ejecución.
Use las propiedades Caption e Image , por separado o juntas, para etiquetar o poner un icono en una ficha.
Por ejemplo lo siguiente, establece en tiempo de ejecución , el caption de la ficha 1
TabStrip1.Tabs(1).Caption = "Un Texto"
Esto otro, cambia en tiempo de ejecución , la imagen de la ficha 3 ( La imagen está ubicada en el imagelist )
TabStrip1.Tabs(1).Image = 3
Ejemplo para enlazarlo a un control imageList en tiempo de ejecución
Use la propiedad ToolTipText para mostrar temporalmente una cadena de texto en un pequeño cuadro rectangular en tiempo de ejecución cuando el cursor del usuario se posa sobre la ficha.
Para establecer la propiedad ToolTipText en tiempo de diseño, active la casilla de verificación ShowTips en la ficha General y después escriba la cadena de información sobre herramientas en el cuadro de texto ToolTipText .
Para devolver una referencia a un objeto Tab que un usuario ha seleccionado, use la propiedad SelectedItem ; para determinar si una ficha específica se ha seleccionado, use la propiedad Selected . Estas propiedades son útiles junto con el evento BeforeClick para comprobar o grabar datos asociados con la ficha seleccionada actualmente antes de mostrar la siguiente ficha seleccionada por el usuario.
Cada objeto Tab también tiene propiedades de sólo lectura que puede usar para hacer referencia a un único objeto Tab de la colección Tabs : Left , Top , Height y Width .
Agrega un objeto Tab a una colección Tabs en un control TabStrip .
Sintaxis
objeto. Add( índice, clave, título, imagen )
La sintaxis del método Add consta de las siguientes partes:
Parte | Descripción |
objeto | Una expresión de objeto que da como resultado una colección Tabs . |
índice | Opcional. Un entero que especifica la posición en la que desea insertar el objeto Tab . Si no especifica ningún índice, el objeto Tab se agrega al final de la colección Tabs . |
clave | Opcional. Una cadena única que identifica al objeto Tab . Utilice la clave para recuperar una ficha específica. Es equivalente a establecer la propiedad Key del nuevo objeto Tab después de haberlo agregado a la colección Tabs . |
título | Opcional. La cadena que aparece en el objeto Tab . Es equivalente a establecer la propiedad Caption del nuevo objeto Tab después de haberlo agregado a la colección Tabs . |
imagen | Opcional. El índice de una imagen en un control ImageList asociado. Esta imagen se muestra en la ficha. Es equivalente a establecer la propiedad Image del nuevo objeto Tab después de haberlo agregado a la colección Tabs . |
Comentarios
Para agregar fichas en tiempo de diseño , haga clic en el botón Insertar ficha de la ficha Fichas de la Página de propiedades del control TabStrip y complete los campos apropiados para la nueva ficha.
Para agregar fichas en tiempo de ejecución , utilice el método Add , que devuelve una referencia al objeto Tab recién insertado. Por ejemplo, el siguiente código agrega una ficha con el título "Hola" y cuya clave es "MiFicha", como la segunda ficha (su índice es 2).
Set X = TabStrip1.Tabs.Add(2,"MiFicha","Hola")
Este ejemplo agrega tres objetos Tab , cada uno con títulos e imágenes de un control ImageList , a un control TabStrip . Para probar este ejemplo, ponga un control ImageList y un control TabStrip en un formulario. El control ImageList proporciona las imágenes para los objetos Tab . Pegue el siguiente código en el evento Load del objeto Form y ejecute el programa.
Private Sub Form_Load() Dim X As Integer Set TabStrip1.ImageList = ImageList1 TabStrip1.Tabs(1).Caption = "Hora" TabStrip1.Tabs.Add 2, , "Fecha" TabStrip1.Tabs.Add 3, , "Correo" For X = 1 To TabStrip1.Tabs.Count TabStrip1.Tabs(X).Image = X Next X End Sub
Devuelve o establece un valor que indica si un control TabStrip puede mostrar más de una fila de fichas.
El número de filas se establece automáticamente según el ancho y el número de fichas. El número de filas puede cambiar si el control cambia de tamaño, lo que asegura que la ficha se ajusta a la siguiente fila. Si MultiRow es False y la última ficha excede el ancho del control, se agregará un control numérico horizontal en el extremo derecho
En tiempo de diseño , sitúe la propiedad MultiRow en la ficha General de la Página de propiedades . En tiempo de ejecución , use código como el siguiente para establecer la propiedad MultiRow :
' Permite más de una fila de fichas en el control TabStrip. TabStrip1.MultiRow = TRUE
Devuelven o establecen el alto y el ancho fijo de todos los objetos Tab , pero sólo si la propiedad TabWidthStyle está establecida a tabFixed .
La propiedad TabFixedHeight se aplica a todos los objetos Tab del control TabStrip . Se establece de manera determinada como el alto de la fuente, como queda especificado en la propiedad Font, o el alto del objeto ListImage especificado por la propiedad Image, lo que sea mayor, mas unos pocos píxeles extra que hacen de borde. Si la propiedad TabWidthStyle está establecida a tabFixed y el valor de la propiedad TabFixedWidth está establecido, el ancho de cada objeto Tab sigue siendo igual tanto si se agregan como si se eliminan objetos Tab en el control.
Propiedad que Devuelve o establece un valor que determina la justificación o ancho de todos los objetos Tab
Los valores válidos para TabWidthStyle son
Ejemplo para establecer la propiedad en tiempo de ejecución:
' Justifica todas las fichas de una fila para ajustarlas ' al ancho del control. TabStrip1.MultiRow = True TabStrip1.TabWidthStyle = tabJustified ' Crea filas de fichas desiguales. TabStrip1.MultiRow = True TabStrip1.TabWidthStyle = tabNonJustified ' Establece el mismo ancho para todas las fichas. TabStrip1.TabFixedWidth = 500 TabStrip1.TabWidthStyle = tabFixed
Devuelve o establece la apariencia, fichas o botones, de un control TabStrip .
Sintaxis
objeto. Style [ = valor ]
La propiedad Style determina si el control tiene la apariencia de un botón de comando (Buttons) o de un separador de carpeta (Tabs). En tiempo de diseño, cuando pone un control TabStrip en un formulario, tiene un separador de carpeta. Si elige el valor tabTabs para la propiedad Style , habrá un borde alrededor del área interna del control TabStrip . Aunque el valor tabButtons de la propiedad Style no muestra ningún borde alrededor del área interna, esa área existe.
La sintaxis de la propiedad Style consta de las siguiente partes:
Los valores válidos para valor son:
Para cambiar en tiempo de diseño la propiedad Style, hacerlo desde la página de propiedades, y en tiempo de ejecución por ejemplo
' Propiedad Style establecida a Tabs. TabStrip1.Style = tabTabs ' Propiedad Style establecida a Buttons. TabStrip1.Style = tabButtons
Devuelve o establece un valor que determina si se dibujan separadores entre los botones de un control TabStrip que tenga los estilos tabButton o tabFlatButton .
Sintaxis
objeto . Separators [ = booleano ]
Importante : Para mostrar los separadores, la propiedad Style debe tener el valor tabButton o tabFlatButton .
Se genera cuando se hace clic en un objeto Tab de un control TabStrip o cuando el valor Selected de un objeto Tab ha cambiado.
Sintaxis
Private Sub objeto _BeforeClick( Cancel As Integer)
La sintaxis del evento BeforeClick consta de las siguientes partes:
Comentarios
Use el evento BeforeClick para validar la información del objeto Tab antiguo antes de generar realmente un evento Click que seleccione el nuevo objeto Tab . Establecer el argumento cancel a True le permite detener un cambio a la nueva selección.
Nota Establecer el argumento cancel a True evita que el enfoque cambie a otra ficha pero no detendrá el evento Click.
Nota Si usa las funciones MsgBox o InputBox durante el procedimiento de evento BeforeClick, el control TabStrip no recibirá un evento Click, cualquiera que sea el valor del argumento cancel.
Este ejemplo usa el evento BeforeClick para demostrar cómo evitar que un usuario cambie a otra ficha. Esto es útil cuando desea comprobar información en la ficha actual antes de mostrar la ficha recién seleccionada.
Para probar este ejemplo, ponga un control TabStrip y una matriz de controles Frame de dos elementos en el formulario (establezca la propiedad BorderStyle a None ). En el primer control Frame , agregue un control CheckBox y en el segundo, agregue un TextBox . Pegue el siguiente código en el evento Load del objeto Form y ejecute el programa. Haga clic en la ficha titulada Texto después de activar o desactivar el CheckBox en la ficha titulada Casilla.
Private Sub Form_Load() Dim i As Integer Dim Tabx As Object ' Establece el título de la primera ficha como "Casilla" TabStrip1.Tabs(1).Caption = "Casilla" ' Agrega una segunda ficha con "Texto" como título. Set Tabx = TabStrip1.Tabs.Add(2, , "Texto") ' Etiqueta la casilla de verificación. Check1.Caption = "Cancelar cambio de ficha" ' Alinea los marcos con el área interna ' del control Tabstrip. For i = 0 To 1 Frame1(i).Left = TabStrip1.ClientLeft Frame1(i).Top = TabStrip1.ClientTop Frame1(i).Height = TabStrip1.ClientHeight Frame1(i).Width = TabStrip1.ClientWidth Next ' Pone arriba el contenedor de marco ' de la primera ficha. Frame1(0).ZOrder 0 End Sub ' El evento BeforeClick comprueba el valor de la casilla ' de verificación para determinar si se continúa con el ' evento Click. Private Sub TabStrip1_BeforeClick(Cancel As Integer) If TabStrip1.Tabs(1).Selected Then If Check1.Value = 1 Then Cancel = True End If End Sub Private Sub TabStrip1_Click() Frame1(TabStrip1.SelectedItem.Index-1).ZOrder 0 End Sub
evento que se desencadena al hacer clic en un objeto Tab o al cambiar la propiedad Value de la ficha. Se usa para comprobar parámetros antes de que se genere el evento Click.
Por ejemplo lo siguiente , al hacer click en un tab, muestra el captio de la ficha seleccionada
Private Sub TabStrip1_Click() MsgBox TabStrip1.SelectedItem.Caption End Sub
Buscar en Recursos vb
Recursos visual basic - Buscar - Privacidad - Copyright © 2005 - 2009 - www.recursosvisualbasic.com.ar