Visual Basic - parte de ventana transparente

Life is soft - evento anual de software empresarial
 
Vista:

parte de ventana transparente

Publicado por Marco (5 intervenciones) el 28/07/2007 21:36:58
Saludos a todos.

Eh creado un form con un skin personalizado, estableciendo su propiedad borderstyle = 0 , e hice mi propia barra de titulo y botones cerrar, maximizar.....etc, pero necesito que mi barra de titulo sea transparente, pero solo la barra de titulo asi como lo hace el windows vista. ¿con que codigo puedo hacer algo asi?

agradezco su atencion y tiempo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:parte de ventana transparente

Publicado por Andrea (13 intervenciones) el 28/07/2007 23:30:24
Eh creado un form con un skin personalizado, estableciendo su propiedad borderstyle = 0 , e hice mi propia barra de titulo y botones cerrar, maximizar.....etc,

y como lo hiciste? nos puedes poner el codigo, a mi me interesa muxo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alguien que conteste mi pregunta?

Publicado por Marco (5 intervenciones) el 29/07/2007 00:53:34
Andrea te lo mando a tu correo, ¿pero alguien sabe como hacer lo que pregunto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alguien que conteste mi pregunta?

Publicado por barca1010 (132 intervenciones) el 31/07/2007 16:57:55
yo consegui este codigo que hace que la ventana sea transparente pero es toda la ventana....

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" ( _
ByVal hwnd As Long, _
ByVal nIndex As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" ( _
ByVal hwnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Private Declare Function SetLayeredWindowAttributes Lib "user32" ( _
ByVal hwnd As Long, _
ByVal crey As Byte, _
ByVal bAlpha As Byte, _
ByVal dwFlags As Long) As Long

'Constantes para la transparencia
Private Const GWL_EXSTYLE = (-20)
Private Const WS_EX_LAYERED = &H80000
Private Const LWA_ALPHA = &H2&

'Aplica la transparencia al formulario. El nivel o grado de transparencia lo indica la variable LEVEL
Call SetWindowLong(frmNombre.hwnd, GWL_EXSTYLE, GetWindowLong(frmNombre.hwnd, GWL_EXSTYLE) Or WS_EX_LAYERED)
Call SetLayeredWindowAttributes(frmNombre.hwnd, 0, LEVEL, LWA_ALPHA)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar