Foro basado en un ejemplo sobre transparencias de toda una ventana he probados sobre varios controles y funciona todo bien, bueno el Say presenta un detalle como se ve en la imagen pero creo poder resolverlo...
chequen la imagen... seria genial modificar la classe del window y habilitar un metodo donde facilite activarlo y asignar el nivel...
bueno saludos le dejo la imagen...
Transparencias funcionan bien y se puede controlar el nivel.
- FranciscoA
- Posts: 1964
- Joined: Fri Jul 18, 2008 1:24 am
- Location: Chinandega, Nicaragua, C.A.
-
- Posts: 330
- Joined: Fri May 25, 2007 9:06 pm
Re: Transparencias funcionan bien y se puede controlar el ni
Bun dia Foro, disculpen por no respoder antes, aqui les dejo el link para descarga del ejemplo.
"http://www.adrive.com/public/6d01c6207b ... dab14.html"
Saludos y Felices Fiestas...
Atte
Tosko
"http://www.adrive.com/public/6d01c6207b ... dab14.html"
Saludos y Felices Fiestas...
Atte
Tosko
tosko wrote:Foro basado en un ejemplo sobre transparencias de toda una ventana he probados sobre varios controles y funciona todo bien, bueno el Say presenta un detalle como se ve en la imagen pero creo poder resolverlo...
chequen la imagen... seria genial modificar la classe del window y habilitar un metodo donde facilite activarlo y asignar el nivel...
bueno saludos le dejo la imagen...
Code: Select all
#include "FiveWin.ch"
Function Main()
local oGet, cSeguridad:=Space(12), ide:=Space(10)
local oBrush, para
Define Brush oBrush COLOR nRGB( 255, 106, 0 )
Define Dialog oDlgC ResName "demo" Brush oBrush TRANSPARENT
ReDefine Get oGet var ide id 101 of oDlgC
ReDefine Get oGet var cSeguridad id 102 of oDlgC
ReDefine Button id 201 of oDlgC
ReDefine Button id 202 of oDlgC;
Action (oDlgC:End())
oDlgC:lHelpIcon:=.f.
Activate Dialog oDlgC Center;
On Init( Dialogo:= getwindowlong( oDlgC:hWnd, -20 ), ;
setwindowlong( oDlgC:hWnd, -20, nOr( Dialogo, 524288 ) ) , ;
setlayeredwindowattributes( oDlgC:hWnd, 0, 230, 2 ) ) // El parametro 230
oBrush:End() // es el nivel de transparencia
Return Nil // el el tope maximo es 255 entre
// Menor seal este numero mas trasnparente sera
DLL32 function getwindowlong( hwnd as LONG, index as LONG ) AS LONG PASCAL FROM "GetWindowLongA" lib "user32.dll"
DLL32 function setwindowlong( hwnd as LONG, index as LONG, newlog as LONG ) AS LONG PASCAL FROM "SetWindowLongA" lib "user32.dll"
DLL32 function setlayeredwindowattributes( hwnd as LONG, crkey as LONG, alpha as WORD, flag as LONG ) AS LONG PASCAL FROM "SetLayeredWindowAttributes" lib "user32.dll"