TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Patricio Avalos Aguirre » Fri Jul 09, 2010 5:31 pm

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
Patricio Avalos Aguirre
 
Posts: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Raymundo Islas M. » Fri Jul 09, 2010 6:21 pm

Patricio,

+1

Sip, me hace lo mismo.


Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Raymundo Islas M.
 
Posts: 592
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Personal » Sun Jul 11, 2010 1:28 pm

viewtopic.php?f=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
Personal
 
Posts: 32
Joined: Sun Dec 03, 2006 12:05 pm
Location: BRASIL - Lins - SP

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Patricio Avalos Aguirre » Wed Jul 14, 2010 4:20 pm

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
Patricio Avalos Aguirre
 
Posts: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Antonio Linares » Wed Jul 14, 2010 7:28 pm

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  Expand view  RUN
      ...

      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: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Antonio Linares » Wed Jul 14, 2010 8:33 pm

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
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Patricio Avalos Aguirre » Wed Jul 14, 2010 10:20 pm

ahora casca en los ribbon

Code: Select all  Expand view  RUN
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  Expand view  RUN

              //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: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Patricio Avalos Aguirre » Tue Jul 20, 2010 8:51 pm

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  Expand view  RUN

REDEFINE GROUP ID 301 OF oDlg
REDEFINE GROUP ID 302 OF oDlg


y funciona perfect...


Code: Select all  Expand view  RUN
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
User avatar
Patricio Avalos Aguirre
 
Posts: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby acwoo1 » Sun Aug 01, 2010 5:07 am

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
acwoo1
 
Posts: 173
Joined: Tue Nov 10, 2009 10:56 am

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Antonio Linares » Sun Aug 01, 2010 5:33 am

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:

viewtopic.php?p=102058#p102058
regards, saludos

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

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Armando Picon » Sun Aug 01, 2010 4:45 pm

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  Expand view  RUN
      ...

      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
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Cgallegoa » Mon Aug 02, 2010 3:14 pm

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-24.07, xHarbour 1.3.1 Build 20240624, Borland C++7.70, PellesC ***
Cgallegoa
 
Posts: 494
Joined: Sun Oct 16, 2005 3:32 am
Location: Quito - Ecuador

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Antonio Linares » Mon Aug 02, 2010 11:10 pm

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
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Cgallegoa » Tue Aug 03, 2010 3:12 pm

Perfecto Antonio, todo bien ahora.

Gracias y saludos,

Carlos Gallego
Saludos,

Carlos Gallego

*** FWH-24.07, xHarbour 1.3.1 Build 20240624, Borland C++7.70, PellesC ***
Cgallegoa
 
Posts: 494
Joined: Sun Oct 16, 2005 3:32 am
Location: Quito - Ecuador

Re: TRANSPARENCIA SAY Y CHECKBOX fallan al presionar tecla alt

Postby Armando Picon » Tue Aug 03, 2010 10:38 pm

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
User avatar
Armando Picon
 
Posts: 446
Joined: Mon Dec 26, 2005 9:11 pm
Location: Lima, Peru

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 6 guests