TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Patricio Avalos Aguirre »

Estimados

el ejemplo gradbrus.prg al presionar el boton FIRST sale un dialogo con checkbox si uno presiona la tecla ALT estos desaparecen

a alguien mas le sucede?

ahh utilizo windows 7
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Raymundo Islas M. »

Patricio,

+1

Sip, me hace lo mismo.


Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Personal
Posts: 32
Joined: Sun Dec 03, 2006 12:05 pm
Location: BRASIL - Lins - SP
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Personal »

http://forums.fivetechsupport.com/viewt ... =6&t=19070

Agora com a versão do FWH 10.6 continua o problema.
S.A.Oliveira
Lins-SP - Brasil
FWH 10.9, PellesC,MySql
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Patricio Avalos Aguirre »

solo para que no se pierda este mensaje...
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Antonio Linares »

Patricio,

Este es un error que hemos corregido varias veces y que luego, por varias razones hemos pensado que no era necesario. Pero samples\GradBrus.prg claramente demuestra que si hace falta solucionarlo.

Hay que añadir estas líneas a la Clase TControl en source\classes\control.prg

Code: Select all

       ...

      case nMsg == WM_LBUTTONDOWN
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return Super:LButtonDown( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_LBUTTONUP
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return Super:LButtonUp( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_UPDATEUISTATE  // buttons, radios and checkboxes were erased when pressing ALT
           nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return nResult
   endcase
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Antonio Linares »

En el cambio anterior hay que llamar a:

return ::LButtonDown( ... )
...
return ::LButtonUp( ... )

en vez de a:

return Super:LButtonDown( ... )
...
return Super:LButtonUp( ... )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Patricio Avalos Aguirre »

ahora casca en los ribbon

Code: Select all

Application
===========
   Path and name: C:\FWH\samples\testqck.exe (32 bits)
   Size: 1,673,216 bytes
   Time from start: 0 hours 0 mins 2 secs 
   Error occurred at: 07/14/10, 18:18:12
   Error description: Error BASE/1066  Argument error: conditional
   Args:
     [   1] = U   

Stack Calls
===========
   Called from: c:\fwh\source\classes\CONTROL.prg => TCONTROL:HANDLEEVENT(1485)
   Called from: .\source\classes\TRIBBON.PRG => TRIBBONBAR:HANDLEEVENT(956)
   Called from: c:\fwh\source\classes\WINDOW.prg => _FWH(3391)

asi funciona muy bien

Code: Select all

              //revisando problemas de transparencia ..

      case nMsg == WM_LBUTTONDOWN
           if Valtype( ::lTransparent  ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh()
           endif
           return ::LButtonDown( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_LBUTTONUP
           if Valtype( ::lTransparent  ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh()
           endif
           return ::LButtonUp( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_UPDATEUISTATE  // buttons, radios and checkboxes were erased when pressing ALT
           nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
           if Valtype( ::lTransparent  ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh()
           endif
           return nResult
 
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Patricio Avalos Aguirre »

auh!!!!

Ahora al presionar un CHECKBOX hace un parpadeo de refresh en toda el dialogo...

bueno elimine la sugerencia que dio antonio y funciona perfecto

Porque?...

envestigando un poco el codigo era que en mi dialogo tenia GROUPBOX sin definir en mi codigo, ahora
estan asi

Code: Select all

REDEFINE GROUP ID 301 OF oDlg
REDEFINE GROUP ID 302 OF oDlg
y funciona perfect...

Code: Select all

para su analisis
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
acwoo1
Posts: 159
Joined: Tue Nov 10, 2009 10:56 am

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by acwoo1 »

Thanks for the help.


case nMsg == WM_LBUTTONDOWN
if Valtype( ::lTransparent ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
::oWnd:Refresh()
endif
return ::LButtonDown( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

case nMsg == WM_LBUTTONUP
if Valtype( ::lTransparent ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
::oWnd:Refresh()
endif
return ::LButtonUp( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

case nMsg == WM_UPDATEUISTATE // buttons, radios and checkboxes were erased when pressing ALT
nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
if Valtype( ::lTransparent ) = "L" .and. ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
::oWnd:Refresh()
endif
return nResult
________________________

How to prevent dialog box from flickering when I click on the checkbox.

Thanks

Regards

ACWOO
using fwh10.7 + harbour2.1+bcc582
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Antonio Linares »

Acwoo,

Please review this example and you will see the right way to implement a gradient as a brush so there will be no flickering:

http://forums.fivetechsupport.com/viewt ... 58#p102058
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Armando Picon
Posts: 448
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Armando Picon »

METHOD HandleEvent( nMsg, nWParam, nLParam ) CLASS TControl

/* Cambios propuestos por A. Linares y Patricio Avalos Aguirre*/
case nMsg == WM_UPDATEUISTATE // buttons, radios and checkboxes were erased when pressing ALT
nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
if Valtype( ::lTransparent ) = "L" .and. ::lTransparent .and. ;
::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
::oWnd:Refresh()
endif
return nResult
/* Fin de Agregado por Linares y confirmado por Patricio Avalos Aguirre*/

Y este trozo donde se menciona a "TBTNBMP" ¿como queda? ¿sería adecuado que se agregue a la propuesta?

case nMsg == WM_UPDATEUISTATE // buttons, radios and checkboxes were erased when pressing ALT
nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
if Upper( ::ClassName() ) == "TBTNBMP"
::Refresh()
endif
::oWnd:Refresh()
return nResult

Antonio Linares wrote:Patricio,

Este es un error que hemos corregido varias veces y que luego, por varias razones hemos pensado que no era necesario. Pero samples\GradBrus.prg claramente demuestra que si hace falta solucionarlo.

Hay que añadir estas líneas a la Clase TControl en source\classes\control.prg

Code: Select all

       ...

      case nMsg == WM_LBUTTONDOWN
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return Super:LButtonDown( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_LBUTTONUP
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return Super:LButtonUp( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_UPDATEUISTATE  // buttons, radios and checkboxes were erased when pressing ALT
           nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
           if ::lTransparent .and. ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" )
              ::oWnd:Refresh() 
           endif   
           return nResult
   endcase
 
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
Cgallegoa
Posts: 335
Joined: Sun Oct 16, 2005 3:32 am
Location: Quito - Ecuador
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Cgallegoa »

El problema sigue con FWH10.7. Con ALT desaparecen los PROMPT

Igual con samples/gradbrus testrad2, testrad5. En general con los Radios, Checkbox y transparencias hay problemas.

Saludos,

Carlos Gallego
Saludos,

Carlos Gallego

*** FWH-20.07, xHarbour 1.2.3 Build 20190603, Borland C++7.30, PellesC ***
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Antonio Linares »

Carlos,

El error era de la función IsAppThemed() la cual en una modificación reciente tenía un bug.

Acabamos de publicar un nuevo build de FWH 10.7 con la función IsAppThemed() correcta. Según nuestras pruebas ahora funcionan correctamente todos esos ejemplos que mencionas :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Cgallegoa
Posts: 335
Joined: Sun Oct 16, 2005 3:32 am
Location: Quito - Ecuador
Contact:

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Cgallegoa »

Perfecto Antonio, todo bien ahora.

Gracias y saludos,

Carlos Gallego
Saludos,

Carlos Gallego

*** FWH-20.07, xHarbour 1.2.3 Build 20190603, Borland C++7.30, PellesC ***
User avatar
Armando Picon
Posts: 448
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Post by Armando Picon »

Antonio
Y para nosotros, los que no poseemos las últimas versiones.... ¿habrá algún consejo, aparte de la consabida actualización necesaria?.. Como decía un personaje de Caricatura Chileno... ¡exijo una explicación! :wink:
Saludos
Armando
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
Post Reply