Extraño comportamiento de TBUTTON en tactil

User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Extraño comportamiento de TBUTTON en tactil

Post by karinha »

Y con BUTTONBMP que pasa? saludos.
João Santos - São Paulo - Brasil
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

Jose Luis,

Este ejemplo funciona bien en el PC:

Te falla en el tablet ?

Code: Select all

#include "FiveWin.ch"

function Main()

   local oDlg
   
   SkinButtons()
    
   DEFINE DIALOG oDlg
   
   @ 2, 2 BUTTON oBtn PROMPT "Test" ACTION MsgInfo( "ok" )
   
   ACTIVATE DIALOG oDlg CENTERED    

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Antonio:
El mal comportamiento solo es utilizando la entrada tactil de la tablet, si conecto un raton a la tablet y pulso usando el raton, no hay problemas, funciona exactamente igual que el el pc de sobremesa, si uso un touchpad que se le puede conectar a la tablet, tambien funciona bien siempre que utilice los botones del touchpad que simulan los del ratón, pero si uso los gestos sobre el touchpad, el comportamiento es errático, no siempre ejecuta la acción dos veces.
Con los btnbmp no ocurre, pero me temo que se debe a que la pulsación del raton en esta clase está dividida en varios eventos (pulsar-mantener pulsado-levantar).
Repito que sólo pasa utilizando la entrada tactil de las tablets, tanto en win 8.1 como win 10 y siempre que tengamos la llamada a skinbuttoms().

Un saludo
José Luis
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

José Luis,

Que tablet usas ?
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: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

Puedes probar a añadir esta función a tu PRG principal y comprobar si suena el MsgBeep() ?

Code: Select all

Function FWSkinBtnKeyUp( hWnd, nKey, nFlags )
  local hDC

   If nKey == 32
      hDC = GetDC( hWnd )
      FWSkinBtnPaint( hWnd, hDC, .F. )
      ReleaseDC( hWnd, hDC )
   EndIf

   MsgBeep()

  Return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Antonio:
Esta tarde lo pruebo, ahora durante la mañana estan en uso las dos tablets, una es ASUS T100, y la otra bq Tesla w8, en ambas el comportamiento es exactamente el mismo.

Edito:
Realizo la prueba con el test que me indicaste, añadiendole SkinButtons() y la función que me indicaste en el post superior y los resultados obtenidos son los siguientes en ambas tablets:

Usando un raton conectado al USB de la misma pulso el boton "Test" suena el sonido del sistema y aparece el msginfo pulso su boton y volvemos al dialogo inicial (un sonido)

Usando mis dedos contra el cristal de la tablet pulso el boton "Test" aparece el msginfo pulso su boton y suena el sonido del sistema, aparece el msginfo pulso su boton, suena el sonido del sistema y vuelve a aparecer el msginfo, pulso su boton y vuelvo al diálogo inicial (dos sonidos)

Este último comportamiento es identico si en la tablet ASUS pogo su teclado y hago lo mismo usando el touchpad sin tocar los botones que similan a los del raton.

un saaludo
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Antonio:
Realizo la prueba con el test que me indicaste, añadiendole SkinButtons() y la función que me indicaste en el post superior y los resultados obtenidos son los siguientes en ambas tablets:

Usando un raton conectado al USB de la misma pulso el boton "Test" suena el sonido del sistema y aparece el msginfo pulso su boton y volvemos al dialogo inicial (un sonido)

Usando mis dedos contra el cristal de la tablet pulso el boton "Test" aparece el msginfo pulso su boton y suena el sonido del sistema, aparece el msginfo pulso su boton, suena el sonido del sistema y vuelve a aparecer el msginfo, pulso su boton y vuelvo al diálogo inicial (dos sonidos)

Este último comportamiento es identico si en la tablet ASUS pogo su teclado y hago lo mismo usando el touchpad sin tocar los botones que similan a los del raton.

Un saludo
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

ok, gracias

sigo revisando a ver de donde pueda venir ese comportamiento
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: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

Prueba ahora a añadir esta función:

Code: Select all

 Function FWSkinBtnLButtonDown( hWnd, nRow, nCol )
  local hDC := GetDC( hWnd )
  local oBtn := oWndFromhWnd( hWnd )

  hWndDown = hWnd
  SetFocus( hWnd )
  SysRefresh()
  lBtnPressed = .T.
  lMOver = .F.
  FWSkinBtnPaint( hWnd, hDC, lBtnPressed )

  ReleaseDC( hWnd, hDC )

  MsgBeep()
   
  Return nil
Quita la llamada a MsgBeep() de la función FWSkinBtnKeyUp() y asi si suena es que está correctamente usando FWSkinBtnLButtonDown(). Usa ambas
funciones, gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Antonio:
Disculpa la demora, pero hasta esta tarde no puedo hacer las pruebas correspondientes, en cuanto las efectúe te reporto los datos.
Un saludo
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Bueno, ante todo disculparme por la demora, pero la tarea me tenia desbordado, asi que ahora que he tenido tiempo he realizado las pruebas, con tres tablets, con windows 8.1 y 10, el comportamiento en todas es el mismo:
La acción definida en un boton se ejecuta dos veces cuando se pulsa directamente con el dedo en la pantalla táctil, igual ocurre si le añado la función que indicó Antonio -- FWSkinBtnKeyUp --, sin embargo, el comportamiento es correcto cuando añado la función -- FWSkinBtnLButtonDown --
Agradezco tu ayuda Antonio, parece ser que ya está claro que es el responsable del raro comportamiento cuando el SkinButtons está activo.
Un saludo
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Extraño comportamiento de TBUTTON en tactil

Post by Antonio Linares »

Entonces con la función FWSkinBtnLButtonDown() modificada ya has podido solucionarlo, si ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
groiss
Posts: 206
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Extraño comportamiento de TBUTTON en tactil

Post by groiss »

Antonio:
Efectivamente.
Gracias
Saludos
Post Reply