FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Windows MDI Transparentes
Posts: 392
Joined: Tue Jul 29, 2008 01:55 PM
Windows MDI Transparentes
Posted: Fri Mar 17, 2017 07:26 AM

Hola Fivewinners.

No logro hacer que un window MDI sea transparente.

Solo lo he conseguido cuando el Window principal si es transparente y entonces el windows mdi si se muestra como transparente en el mismo % del principal

Como logro desplegar un window MDI transparente ?

Uso FW 17.02

Saludos

Visite Chiapas, el paraiso de México.
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: Windows MDI Transparentes
Posted: Fri Mar 17, 2017 11:55 AM
Hola, prueba esto:

Code (fw): Select all Collapse
#define AW_BLEND       524288         // Uses a fade effect. This flag can be used only if hwnd is a top-level window.
#define GWL_EXSTYLE       -20         // Para transparencias

FUNCTION SetTransparent( oWnd, nGrado )

   SetWindowLong( oDlg:Wnd, GWL_EXSTYLE, nOr( GetWindowLong( oWnd:hWnd, GWL_EXSTYLE ), AW_BLEND ) )
   SetLayeredWindowAttributes( oWnd:hWnd, 0, nGrado, 2 )

RETURN Nil


Lo he utilizado en diálogos y windows normales, pero no en MDI, prueba haber si te sirve.


se utiliza en la clausula ON INIT de la windows o Diálogos, donde el parámetro nGrado va desde 0 a 255

0 = invisible
255 = sin transparencia

saludos
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Windows MDI Transparentes
Posted: Fri Mar 17, 2017 01:02 PM
armando.lagunas wrote:Hola, prueba esto:

Code (fw): Select all Collapse
#define AW_BLEND       524288         // Uses a fade effect. This flag can be used only if hwnd is a top-level window.
#define GWL_EXSTYLE       -20         // Para transparencias

FUNCTION SetTransparent( oWnd, nGrado )

   SetWindowLong( oDlg:Wnd, GWL_EXSTYLE, nOr( GetWindowLong( oWnd:hWnd, GWL_EXSTYLE ), AW_BLEND ) )
   SetLayeredWindowAttributes( oWnd:hWnd, 0, nGrado, 2 )

RETURN Nil


Lo he utilizado en diálogos y windows normales, pero no en MDI, prueba haber si te sirve.


se utiliza en la clausula ON INIT de la windows o Diálogos, donde el parámetro nGrado va desde 0 a 255

0 = invisible
255 = sin transparencia

saludos


Instead of the above code, you can use
Code (fw): Select all Collapse
oWnd:nOpacity := nGrado // 0 .. invisible 255 .. no transparent


Works only for main window or dialog.
Does not work for Child Window or MDICHILD window.
Regards



G. N. Rao.

Hyderabad, India

Continue the discussion