Menu que se pueda seleccionar con teclado num. y con puntero

Menu que se pueda seleccionar con teclado num. y con puntero

Postby josevalle » Fri Aug 04, 2006 1:51 am

Hola:

Cuando uso oWnd:bKeyDown me dice (al ejecutar):

"Not implemented yet: GetNumberOfConsoleInputEvents"

¿De que otra manera podría hacerlo?




#include "FWCE.ch"
#INCLUDE "hbclass.ch"
#include "Directry.ch"


REQUEST DBFCDX
REQUEST HB_LANG_ESWIN
REQUEST HB_CODEPAGE_ESWIN // Para establecer código de página a Español (Ordenación, etc..)


//----------------------------------------------------------------------------//

FUNCTION Main()
***************

LOCAL oWnd

PRIVATE oBoton0,oBoton1,oBoton2

DEFINE WINDOW oWnd TITLE "Menu"

oWnd:bKeyDown := {|| InterpretaTeclado()}

@ 0,121 BTNBMP oBoton0 ;
SIZE 120, 50 ;
PROMPT "0-Salir";
ACTION (EjecutaMenu("0"))

@ 51, 0 BTNBMP oBoton1 ; // Si clico en el boton pierde foco el get y por lo tanto ejecuta el valid
SIZE 120, 50 ;
PROMPT "1-Opcion 1";
ACTION ( EjecutaMenu("1"))

@ 51,121 BTNBMP oBoton2 FILE "2-Pda.bmp" ;
SIZE 120, 50 ;
PROMPT "2-Opcion 2";
ACTION ( EjecutaMenu("2"))

ACTIVATE WINDOW oWnd

RETU NIL

STATIC FUNC EjecutaMenu(pOpcion)
********************************
MsgInfo("P:"+pOpcion)

RETURN .F. // Para que nunca salga de oOpcion

STATIC FUNC InterpretaTeclado()
********************************
LOCAL nOpcion := LastKey()

IF nOpcion >= Asc("0") .AND. nOpcion <= Asc("9")
EjecutaMenu(Asc(nOpcion))
ENDIF

RETURN .T.
Jose Valle
Bilbao
Spain
User avatar
josevalle
 
Posts: 65
Joined: Fri Oct 14, 2005 6:20 pm
Location: Bilbao

Postby Antonio Linares » Sat Aug 05, 2006 9:03 am

Jose,

Hazlo así:
Code: Select all  Expand view
#include "FWCE.ch"
#INCLUDE "hbclass.ch"
#include "Directry.ch"


REQUEST DBFCDX
REQUEST HB_LANG_ESWIN
REQUEST HB_CODEPAGE_ESWIN // Para establecer código de página a Español (Ordenación, etc..)


//----------------------------------------------------------------------------//

FUNCTION Main()
***************

LOCAL oWnd

PRIVATE oBoton0,oBoton1,oBoton2

DEFINE WINDOW oWnd TITLE "Menu"

oWnd:bKeyDown := { | nkey | InterpretaTeclado( nKey )}

@ 0,121 BTNBMP oBoton0 ;
SIZE 120, 50 ;
PROMPT "0-Salir";
ACTION (EjecutaMenu("0"))

@ 51, 0 BTNBMP oBoton1 ; // Si clico en el boton pierde foco el get y por lo tanto ejecuta el valid
SIZE 120, 50 ;
PROMPT "1-Opcion 1";
ACTION ( EjecutaMenu("1"))

@ 51,121 BTNBMP oBoton2 FILE "2-Pda.bmp" ;
SIZE 120, 50 ;
PROMPT "2-Opcion 2";
ACTION ( EjecutaMenu("2"))

ACTIVATE WINDOW oWnd

RETU NIL

STATIC FUNC EjecutaMenu(pOpcion)
********************************
MsgInfo("P:"+pOpcion)

RETURN .F. // Para que nunca salga de oOpcion

STATIC FUNC InterpretaTeclado(nKey)
********************************

IF nKey >= Asc("0") .AND. nKey <= Asc("9")
   EjecutaMenu(Chr(nKey))
ENDIF

RETURN .T.
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 josevalle » Sun Aug 06, 2006 12:04 pm

Gracias Antonio, funciona perfecto
Jose Valle
Bilbao
Spain
User avatar
josevalle
 
Posts: 65
Joined: Fri Oct 14, 2005 6:20 pm
Location: Bilbao


Return to FiveWin para Pocket PC

Who is online

Users browsing this forum: No registered users and 8 guests