Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: Ellesar en Febrero 05, 2012, 04:13:13 pm
-
Hola a todos, hoy quería saber si es posible hacer que un richtexbox sea semi-transparente.
Estuve leyendo este tema http://www.recursosvisualbasic.com.ar/htm/listado-api/100-menu-combo-transparente.htm
Que trata sobre un menu y combo-box transparente (se le puede aplicar cualquier valor de Opacidad) y traté de aplicarlo al richtextbox(Box) pero no obtengo ningún resultado, normalmente el box se queda con el color de fondo negro.
De momento tengo el Box totalmente transparente, pero como estoy usando DirectX 7(DX) y el Box estaría sobre el picture que se ejecuta DX queda oculto por los gráficos dibujados por DX y sólo se ven brevemente(durante menos de 1 segundo) cuando se actualiza el Box (se agrege un texto, muevas una scroll bar).
Aquí una imagen, La parte azul es donde esta el box Transparente(sigue hacia arriba) y se el texto tapado por DX (Parte verde).
(http://img833.imageshack.us/img833/3200/dibujolqh.jpg)
Por si no se ve la imagen
http://img833.imageshack.us/img833/3200/dibujolqh.jpg
Lo que yo quiero hacer es que el Box sea Semi-transparente y de ser posible que no sea tapado por DX, aunque ese ya es un tema aparte ^^.
Desde ya muchas Gracias por leer.
Saludos
Edit: Ya lei los Post anteriores, pero en ellos el Box queda totalmente transparente y no me sirve.
Código que uso para Transparentar Totalmente al Box
Dim result as long
result = SetWindowLong(txtChat.hWnd, GWL_EXSTYLE, WS_EX_TRANSPARENT)
Public Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, ByVal color As Long, ByVal bAlpha As Byte, ByVal Alpha As Long) As Boolean
Public Const GWL_EXSTYLE = (-20)
Public Const WS_EX_LAYERED = &H80000
Public Const WS_EX_TRANSPARENT = &H20&
Public Const LWA_ALPHA = &H2&
Edit2: Me olvide de decir que estoy usando vb6 sp6, aunque supongo que con el ejemplo del combobox se dieron cuenta ^^.