Tecla BACK en smartphone

Tecla BACK en smartphone

Postby Salvador » Fri Jul 18, 2008 10:10 am

Alguien sabe como se captura la pulsacion de dicha tecla desde un get?

He conseguido anular su funcionalidad con:
Code: Select all  Expand view
DEFINE DIALOG oDlg RESOURCE "DLGPASSWORD" OF oCli:oWnd

   
   REDEFINE SAY ID 101 COLOR CLR_BLACK, CLR_WHITE OF oDlg
   REDEFINE GET oGet VAR oCli:cargo ID 102  OF oDlg;
   ON CHANGE oGet:Assign()   
     
    oGet:bGotFocus         := {|| SetInputmode( oGet:hWnd, IM_AMBIG ) }
   
    oDlg:bKeydown         := {|nkey| msginfo(str(nkey)+"get")}
    oDlg:bKeydown         := {|nkey| msginfo(str(nkey)+"dialogo get")}
    oCli:oWnd:bKeydown := {|nkey| msginfo(str(nkey)+" ventana principal")}
    ACTIVATE DIALOG oDlg;
    ON INIT ( DlgFullScr(oDlg:hwnd), oDlg:Setmenu( MenuPassword( oDlg ) ),;
                 VKBACKDISABLE( oDlg:hWnd ) )
      
HB_FUNC( VKBACKDISABLE ) // deshabilita la tecla back
{
   HWND hMenuBar = (HWND) SHFindMenuBar( (HWND) hb_parnl(1) ); 
      
    LPARAM lp = MAKELPARAM(SHMBOF_NODEFAULT | SHMBOF_NOTIFY,SHMBOF_NODEFAULT | SHMBOF_NOTIFY );
   
   SendMessage( hMenuBar, SHCMBM_OVERRIDEKEY, VK_TBACK, lp );
   
   return  ;
}



Después ningun control detecta su pulsación.
Tampoco la clase Tget lo detecta en sus metodos Keydown() y Keychar()
AlgunaIdea ?

Gracias.
Saludos
Salvador
Salvador
 
Posts: 144
Joined: Sun Dec 18, 2005 3:18 pm
Location: España

Postby Antonio Linares » Fri Jul 18, 2008 11:39 am

Salvador,

Te refieres a la tecla de borrado a la izquierda ? (flecha a la izquierda encima de enter en un teclado de PC).

Por que necesitas anularla ?
regards, saludos

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

Postby Salvador » Fri Jul 18, 2008 1:27 pm

Si la misma, en smartphone la tecla [<--]
Por defecto su funcionalidad es volver a la ventana anterior.
Cuando tienes un dialogo con un get, hay que darle la funcionalidad de de la tecla VK_BACK, por eso utilizo la función del post anterior, luego hay que capturar el evento de dicha tecla que será WM_HOTKEY y pasarlo al control que tiene el foco con la función SHSendBackToFocusWindow, para que este la procese.
El problema es que después de programar la tecla, no puedo capturar su evento.
Saludos
Salvador
Salvador
 
Posts: 144
Joined: Sun Dec 18, 2005 3:18 pm
Location: España


Return to FiveWin para Pocket PC

Who is online

Users browsing this forum: No registered users and 28 guests