Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: raul338 en Julio 11, 2011, 10:48:13 pm
-
Hubiera sido mejor si lo hubiera terminado justo para cuando publicaron el tema Un SSTab Mejor (http://www.leandroascierto.com.ar/foro/index.php?topic=903.0)
Pero aca esta, ucTabStrip que es para poner pestañas, es contenedor y podes organizar los controles en Tiempo de Diseño (incluyo un property page)
(http://i53.tinypic.com/2hxlyiu.png)
(http://i55.tinypic.com/2ytpwn5.png)
No incluyo mas detalles porque me siento feliz porque lo acabo de terminar recien xD... pruebenlo :P
Dependencias: Un property Page que es solo necesario si vas a usarlo como contenedor (podes hacer el viejo estilo de ubicar un picture o los controles mediante codigo :P), un ctx que es el icono en la lista de herramientas. Y el OleGuids3.tlb (que esta en la carpeta demo)
Por cierto... si lo van a usar como contendedor: NO PONGAN CONTROLES SIN LA PROPIEDAD hWnd Si quieren poner labels, incluyo un control "TLabel" que es su reemplazo, y es transparente ^^ (no tiene todas las mismas propiedades de un Label, pero... al menos es un buen reemplazante xD. Es transparente en tiempo de ejecucion, en tiempo de diseño es como un label comun, porque sino se hace tedioso su edicion :P. Si no tiene caption, muestra su nombre entre corchetes)
Descargar http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=74007&lngWId=1 (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=74007&lngWId=1)
Se aceptan sugerencias y bugs :P
-
Bravisimo, a revisarlo y desmembrarlo.
Saludos
-
jojojo, rracias rracias...
-
Muy bueno Raul!!, Esta piola lo de la pagina de propiedades ;)
Aun no lo analizo a fondo pero esta de lujo, lo que que faltarian algunas propiedades ItemIcon, ItemParam (que son faciles de implementar)
a gusto personal creo que seria mejor asi la propiedad itemText
Public Property Get ItemText(ByVal index As Long) As String
If hTabs Then
Dim sTabStrip As TCITEM
Dim sText As String
sText = String(255, 0)
sTabStrip.mask = TCIF_TEXT
sTabStrip.cchTextMax = 255
sTabStrip.pszText = StrPtr(sText)
If SendMessageW(hTabs, TCM_GETITEMW, index, sTabStrip) Then ItemText = Left$(sText, InStr(sText, vbNullChar) - 1)
End If
End Property
-
Esta buena esa alternativa LeandroA :P
el manejo de controles se puede optimizar mucho. Lo que pasa es que no supe como (se me ocurrio hasta usar Arrays de Collections xD pero... no salio)
Funciona siempre y cuando no exploten el IDE :P (acuerdense de guardar las cosas)
-
Hay un bug (descubierto por nordex@PSC) con el foco (si hacen click en el boton, veran que no se conserva el foco :P)
Tienen que comentar la linea 1190 del ucTabStrip.ctl (la que es "Call pvSetIPAO")
Despues pondre el link a PSC para descargar la version corregida (cuando lo arreglen :P) Y tambien puse la recomendación de leandro :P
-
Actualizado!! :D
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=74007&lngWId=1 (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=74007&lngWId=1)