Duda sobre el uso de tabstrip en VB 6

Iniciado por X-TN, 20 Junio 2006, 16:55 PM

0 Miembros y 1 Visitante están viendo este tema.

X-TN

Buenas a todos

Me gustaria hacer uso de los tabstrips en un proyecto que estoy haciendo, pero no tengo muy claro como hacerlo, he buscado por alli y tengo una ligera idea de como es, indicando el tab selecionado y que entonces se muestren ciertos componentes.

Pero a la hora de programar como seria?


Gracias de antemano.

Salu2

soplo

hola

El tabstrip no es un container. En realidad lo que haces es tener varios frames ocultos y según el click que hayan pinchado mostrar uno y ocultar los demás.

Así que tienes una rutina que pone todos los frames a oculto y luego muestras el frame que corresponda a la pestaña pinchada.

;D
Callar es asentir ¡No te dejes llevar!

Ironhorse

Si, al no ser container complica muchisimo algo que deberia ser simple.
EL Microsoft Tabbed Dialog (SSTAB) si es container, probalo.


Saludos
Pégense una vuelta por Cracton :)

X-TN

Muchas gracias  ;D

probé el microsoft tabbed dialog, y me resultó mucho más fácil. Pero aun asi me gustaría saber como funciona el tabstrip.

Y con lo que comento Soplo, aclaré un poco el concepto que tenía pero sigo un poco perdido con lo que respecta el código..

es decir, como indico cuando ocultar esos frames?

Gracias y Salu2

_Sergi_

Lo que dice soplo es que el TabStrip no es container, es decir, no es un contenedor de controles, por lo que no puedes depositar sobre cada ficha controles.

La mejor forma de usar TabStrip de un modo similar al que usas Microsoft Tabbed Dialog, es hacerlo es usando PictureBoxes (que sí son container) y que los vayas ocultando o mostrando según que ficha se haya pulsado.

Si sigues teniendo dudas, puedes descargarte un proyecto ya hecho en
Planer Source Code
http://www.planetsourcecode.com

Accede a la sección de VB y busca por "TabStrip".

Un saludo.
Proyecto de Ingeniero

soplo

Hola
Básicamente utilizas lo siguiente:

TabStrip1.SelectedItem
devuelve el caption de la pestaña activa

TabStrip1.TabIndex
devuelve el índice de la pestaña activa

TabStrip1.Tabs( indice )
accedes a la colección tabs (la colección de pestañas).

Así por ejemplo para saber en que pestaña estás
if tabstrip1.selecteditem="&Datos personales" then ...

Si quieres saber si estás en la tercera pestaña
if tabstript1.tabindex=3 then

Lo que nos da
if tabstrip1.tabs(tabstrip1.tabindex+1)="&Datos Personales" then

En la práctica

Dispongo de tres frames de una misma colección
frame(0)
frame(1)
frame(2)
Los tres sin borde ni caption, invisibles y los tres del mismo tamaño.
Para trabajar mas cómodo pongo cada uno de ellos en cualquier lugar del form (que no se superpongan) y coloco en ellos los elementos correspondientes.

Ahora hacer que al cargar el formulario los frames invisibles se coloquen en su sitio.
sub form_load
for x%=0 to 2
frame(x%).top=PosicionVertical
frame(x%).left=PosiciónHorizontal
next x%

Activar el primer frame
frame(0).visible=true
end sub



Ahora controlar si pinchan alguna pestaña y actuar en consecuencia
tabstrip1_click()
OcultarFrames 'ocultar todos los frames
frame(tabstrip1.tabindex).visible=true 'mostrar el frame adecuado
end sub


sub OcultarFrames
for x%=0 to 2
frame(x%).visible=false
next x%
end sub


Por último
Como te han dicho puedes usar cualquier container en vez de frames, pero es recomendable usar frames porque usan poca memoria (son ligeros). Los pictures por ejemplo son muy pesados.

Un saludo
Callar es asentir ¡No te dejes llevar!

X-TN

Muchas gracias!!

Lo he intentado y todo salio, y ya lo entiendo mucho mejor.

Saludos