Problema en el refresco Checkbox (solucionado)
- AngelSalom
- Posts: 727
- Joined: Fri Oct 07, 2005 7:38 am
- Location: Benicarló (Castellón ) - España
- Has thanked: 1 time
- Contact:
Re: Problema en el refresco Checkbox
Gracias Euclides, como comentaba al principio del post, este efecto sólo se produce en diálogos con la claúsula TRANSPARENT.
No me puedo permitir quitar esta cláusula en todo el código de mis aplicaciones.
No me puedo permitir quitar esta cláusula en todo el código de mis aplicaciones.
Last edited by AngelSalom on Wed Jul 17, 2019 7:25 pm, edited 2 times in total.
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Re: Problema en el refresco Checkbox
Hola Angel.
Con TRANSPARENT en SAY y no en DIALOG, no resuelve el problema?
de lo contrario lo siento...
Saludos, Euclides.
Con TRANSPARENT en SAY y no en DIALOG, no resuelve el problema?
de lo contrario lo siento...
Saludos, Euclides.
- AngelSalom
- Posts: 727
- Joined: Fri Oct 07, 2005 7:38 am
- Location: Benicarló (Castellón ) - España
- Has thanked: 1 time
- Contact:
Re: Problema en el refresco Checkbox
Resuelve este caso en concreto pero yo necesito todos los diálogos con TRANSPARENT.
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
- cnavarro
- Posts: 6568
- Joined: Wed Feb 15, 2012 8:25 pm
- Location: España
- Has thanked: 4 times
- Been thanked: 5 times
Re: Problema en el refresco Checkbox
Angel, prueba así a ver si es lo que necesitas
ACTIVATE DIALOG oDlg CENTERED ON INIT ( oCheck:lTransparent := .F. )
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
- AngelSalom
- Posts: 727
- Joined: Fri Oct 07, 2005 7:38 am
- Location: Benicarló (Castellón ) - España
- Has thanked: 1 time
- Contact:
Re: Problema en el refresco Checkbox
cnavarro wrote:Angel, prueba así a ver si es lo que necesitas
ACTIVATE DIALOG oDlg CENTERED ON INIT ( oCheck:lTransparent := .F. )
Cristóbal con tu pista llegué a buen término. Para no tener que modificar mi código he hecho un pequeño ajuste en el método Initiate de la Clase TDialog, modificando
Code: Select all | Expand
...
AEval( ::aControls,;
{ | o | If( ! Upper( o:ClassName() ) $ ;
"TBAR;TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX;TDBCOMBO;TDATEPICK;TTIMEPICK" .and. ;
! o:IsKindOf( 'TXBROWSE' ) .and. ! o:isKindOf( "TBTNFLAT" ), o:lTransparent := .T., ) } )
...
por
Code: Select all | Expand
...
AEval( ::aControls,;
{ | o | If( ! Upper( o:ClassName() ) $ ;
"TBAR;TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX;TDBCOMBO;TDATEPICK;TTIMEPICK;TCHECKBOX" .and. ;
! o:IsKindOf( 'TXBROWSE' ) .and. ! o:isKindOf( "TBTNFLAT" ), o:lTransparent := .T., ) } )
...
No se si sería interesante incorporar este ajuste en futuras revisiones.
Gracias a todos por vuestra ayuda.
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
- cnavarro
- Posts: 6568
- Joined: Wed Feb 15, 2012 8:25 pm
- Location: España
- Has thanked: 4 times
- Been thanked: 5 times
Re: Problema en el refresco Checkbox
Ok,
Puedes comparar con lo que tu anterior versión tenía en esa misma instrucción?
Puedes comparar con lo que tu anterior versión tenía en esa misma instrucción?
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
- AngelSalom
- Posts: 727
- Joined: Fri Oct 07, 2005 7:38 am
- Location: Benicarló (Castellón ) - España
- Has thanked: 1 time
- Contact:
Re: Problema en el refresco Checkbox
Cristóbal, la parte de código de FWH1204
Aparentemente tampoco debería funcionar ... curioso ¿no?
Code: Select all | Expand
if ::lTransparent
FixSays( ::hWnd, ::oBrush:hBrush )
AEval( ::aControls,;
{ | o | If( ! Upper( o:ClassName() ) $ ;
"TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX;TDBCOMBO;TDATEPICK" .and. ;
! o:IsKindOf( 'TXBROWSE' ), o:lTransparent := .T., ) } )
endif
Aparentemente tampoco debería funcionar ... curioso ¿no?
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
- cnavarro
- Posts: 6568
- Joined: Wed Feb 15, 2012 8:25 pm
- Location: España
- Has thanked: 4 times
- Been thanked: 5 times
Re: Problema en el refresco Checkbox
De ahí mi comentario, cuando he visto lo que vas a modificar en la clase, me parecía que eso ha estado ahí desde hace ya muchas versiones
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Re: Problema en el refresco Checkbox
Yo no se si os lio mas o ayudo, mi intencion es ayudar.
El fichero prg junto con el .rc que publico Angel al principio de este mensaje con Fivewin 19.05, la version de Harbour que provee Fivetech y el Borland C++ 7.30 no compila
y arroja el error de mi post. viewtopic.php?f=6&t=37463
que como explico en ese mismo mensaje para arreglarlo, se abre el .rc se graba como .res y voilá compila sin problemas.
Entonces este exe no realiza el borrado del texto.
Da lo mismo que utilizes el IDE FivEdit que archivo .mak , mismo comportamiento.
Pero si compilas directamente el .rc y el prg pero cambiando la version de Borland C++ 7.30 por la 7.00 compila perfectamente
y el exe generado si realiza el borrado del texto, como bien dice Angel.
Angel explica que tanto en la version antigua de Fivewin como con la actual utiliza el compilador 7.0 entonces lo que
explico no tiene logica, pero es lo que ocurre.
asi yo no puedo deciros mas con estos datos espero saqueis conclusiones y si os lio mas me lo decis y no postero mas en este hilo
Saludos
Jose.
El fichero prg junto con el .rc que publico Angel al principio de este mensaje con Fivewin 19.05, la version de Harbour que provee Fivetech y el Borland C++ 7.30 no compila
y arroja el error de mi post. viewtopic.php?f=6&t=37463
que como explico en ese mismo mensaje para arreglarlo, se abre el .rc se graba como .res y voilá compila sin problemas.
Entonces este exe no realiza el borrado del texto.
Da lo mismo que utilizes el IDE FivEdit que archivo .mak , mismo comportamiento.
Pero si compilas directamente el .rc y el prg pero cambiando la version de Borland C++ 7.30 por la 7.00 compila perfectamente
y el exe generado si realiza el borrado del texto, como bien dice Angel.
Angel explica que tanto en la version antigua de Fivewin como con la actual utiliza el compilador 7.0 entonces lo que
explico no tiene logica, pero es lo que ocurre.
asi yo no puedo deciros mas con estos datos espero saqueis conclusiones y si os lio mas me lo decis y no postero mas en este hilo

Saludos
Jose.
Fwh 24.07 64 bits + Harbour 64 bits 3.2dev(r2407221137) + MSVC64
- AngelSalom
- Posts: 727
- Joined: Fri Oct 07, 2005 7:38 am
- Location: Benicarló (Castellón ) - España
- Has thanked: 1 time
- Contact:
Re: Problema en el refresco Checkbox
Matadme si queréis
... acabo de ver que en la versión FWH12.04 ya puse unas modificaciones en la clase DIALOG (como en muchas otras, claro ... es lo que tiene mantener las versiones tan viejas) ....
Aquí el código del DIALOG de la versión FWH1204
Mi código modificado para dicha versión (FWH1204)
Pues si,
parece que TCHECKBOX ya lo puse en las excepciones hace la tira de años ... y se quedó en el tintero.
Por mi parte dejo zanjado el tema pero creo que no estaría de más añadir esta excepción en futuras versiones para no volver a darle vueltas al tema.




Aquí el código del DIALOG de la versión FWH1204
Code: Select all | Expand
if ::lTransparent
FixSays( ::hWnd, ::oBrush:hBrush )
AEval( ::aControls,;
{ | o | If( ! Upper( o:ClassName() ) $ ;
"TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX;TDBCOMBO;TDATEPICK" .and. ;
! o:IsKindOf( 'TXBROWSE' ), o:lTransparent := .T., ) } )
endif
Mi código modificado para dicha versión (FWH1204)
Code: Select all | Expand
if ::lTransparent
FixSays( ::hWnd, ::oBrush:hBrush )
// Sigev
AEval( ::aControls,;
{ | o |
If ! Upper( o:ClassName() ) $ "TCHECKBOX;TRADIO;TGET;TMULTIGET;TBTNBMP;TCOMBOBOX;TWBROWSE;TCBROWSE;TXBROWSE;TLISTBOX;TDBCOMBO;TDATEPICK" .and. ! o:IsKindOf( 'TXBROWSE' )
o:lTransparent := .T.
Endif
} )
endif
Pues si,



Por mi parte dejo zanjado el tema pero creo que no estaría de más añadir esta excepción en futuras versiones para no volver a darle vueltas al tema.
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4