Say no sale transparente en TFolderEx

Say no sale transparente en TFolderEx

Postby AIDA » Wed Sep 01, 2010 9:18 pm

Hola

Les comento que los Say no salen transparentes en los nuevos y bonitos folders TFolderEx

Image

para poder que se transparentaran se hizo lo siguiente..
Code: Select all  Expand view

oApp:oSay := array(6)

@ 2,1  SAY oApp:osay[1] PROMPT "NOMBRE :"              OF oFldd:aDialogs[ 1 ]  TRANSPARENT  

@ 2,12 say oApp:OGETN var oApp:GETNOM               OF oFldd:aDialogs[ 1 ] size 350,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 253,253,253)

@ 2,73 SAY oApp:osay[2] PROMPT "TELEFONOS :"           OF oFldd:aDialogs[ 1 ]  TRANSPARENT  

@ 2,87 say oApp:oGETT  var oApp:gett                OF oFldd:aDialogs[ 1 ] size 100,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW

@ 2,107 say oApp:oGETT2 var oApp:GETT2              OF oFldd:aDialogs[ 1 ] size 100,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255) //SHADOW

@ 5,01 SAY oApp:osay[3] PROMPT "DIRECCION :"           OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)

@ 5,12 say oApp:oGETDIREC var oApp:GETDIREC         OF oFldd:aDialogs[ 1 ] size 442,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)


@ 5,89 SAY oApp:osay[4] PROMPT "CIUDAD :"              OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)

@ 5,98 say oApp:oGETCIU var oApp:gETCIU             OF oFldd:aDialogs[ 1 ] size 156,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 8,01 SAY oApp:osay[5] PROMPT "CORREO ELECTRONICO :"  OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)
@ 8,25 say oApp:aEmail var oApp:cEmail              OF oFldd:aDialogs[ 1 ] size 256,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

@ 10,01 SAY oApp:osay[6] PROMPT "PAGINA INTERNET :"    OF oFldd:aDialogs[ 1 ]  TRANSPARENT //COLOR CLR_WHITE, nRGB(0,0,0)

@ 10,25 say oApp:aPagina var oApp:cPagina           OF oFldd:aDialogs[ 1 ] size 256,18 BORDER COLOR nRgb(0,0,0  ),nRgb( 240, 250, 255)

oFldd:aDialogs[ 1 ]:SetBrush( oBrush1 )
AEVAL( oApp:oSay, {|o| o:setbrush( oBrush1 )} )

 



a si queda ya transparente

Image


Gracias a William Morales por su ayuda :D

Saluditos :wink:
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 877
Joined: Fri Jan 12, 2007 8:35 pm

Re: Say no sale transparente en TFolderEx

Postby wmormar » Thu Sep 02, 2010 5:01 am

AIDA,

Es un placer.

Y esperemos a Daniel corrija este comportamiento para no tener necesidad de colocarle el BRUSH, sino que lo haga directo.
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Re: Say no sale transparente en TFolderEx

Postby Daniel Garcia-Gil » Thu Sep 02, 2010 10:46 am

AIDA, William

El comportamiento es el esperado, explico porque...

Los controles hijos se hacen transparentes por el brush del padre, esa es la tecnica de la transparencia de un control (la mas simple)

Ahora bien, si cambiamos el brush del padre y queremos que los controles hijos sigan siendo transparantes, debemos cambiarles el brush a ellos de igual manera, fivewin no hace eso automaticamente, pues habria que comprobar si el control hijo es transparente o determinar si usa el mismo brush del padre, como veras es un proceso que solo lo conoce previamente el programador y por eso es innesesario que fivewin lo controle internamente con varias validaciones para asignar un brush (para que perder nuestras milesimas de segundo?) y es muy simple usar un AEVAL para asignar el nuevo brush sin hacer validaciones de ningun tipo (una sola linea de codigo vs varias de validacion internas)

Como es el caso expuesto por Aida,
Esta cambiando el brush despues de crear los controles hijos y por logica la transparecia se creara con el brush anterior que tenia el padre, por eso la transparencia del control esta de otro "color" pues era otro brush, para cambiarlo, es correcto el proceso que hizo y es lo que debe hacerse (para la muestra, dio resultado), para no usar el AEVAL en este caso (simple asignacion de brush y no cambio dinamico del mismo) que asigne el brush ANTES de crear los controles hijos
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 71 guests