Page 1 of 1

Pregunta de novato (1)

PostPosted: Wed Nov 23, 2005 11:33 pm
by Rafael Clemente
Llevo solamente un par de dias jugando con el FWPPC y, efectivamente, estoy de acuerdo con José Luis Parajón: Me ha sorprendido lo fácil que es de manejar cuando se tiene un poco de práctica en FWH. Si sólo tuviese unos cuantos ejemplos más...

Ahora, mi pregunta de novato (vendrán más). Me refiero al menú del ejemplo Tutor06.prg. ¿Es posible que al pulsar una de las opciones -por ejemplo "First"- se ejecute ya la acción correspondiente, sin necesidad de desplegar un submenú?

Aclaro que en FWH siempre creo los menus desde código, por lo que con los recursos aún ando algo despistado. ¿Podriais indicarme cómo quedaría la linea correspondiente en el .RC? (para ver/editar el RC yo utilizo Pelles C)

Gracias,

Rafael

PostPosted: Thu Nov 24, 2005 7:35 am
by Antonio Linares
Rafael,

Los menús pulldown de Pocket PC son distintos de los que Windows usa en los PCs. Me refiero a como los organiza en los recursos. Además, de momento, no hemos encontrado la forma de crearlos desde código, por lo que hay que usar recursos. Aqui tienes un ejemplo de menus sin popups:

TestMenu.prg
Code: Select all  Expand view
// FiveWin for Pocket PC - Testing menus without popups menus

#include "FWCE.ch"

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

function Main()

   local oWnd

   DEFINE WINDOW oWnd TITLE "TestMenu" ;
      MENU BuildMenu()

   ACTIVATE WINDOW oWnd ;
      ON CLICK MsgInfo( "Click!" )
     
return nil

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

function BuildMenu()

   local oMenu
   
   DEFINE MENU oMenu RESOURCE 102
   
   REDEFINE MENUITEM ID 100 OF oMenu ACTION MsgInfo( "First" )

   REDEFINE MENUITEM ID 110 OF oMenu ACTION MsgInfo( "Second" )

return oMenu

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


TestMenu.rc
Code: Select all  Expand view
#ifdef _CE
   #include "c:\vce\include\arm\windows.h"
   #include "c:\vce\include\arm\commctrl.h"
#endif

#define I_IMAGENONE      (-2)
#define IDS_HELP      104

#ifdef _CE
102 RCDATA
BEGIN
  102, 2,
  I_IMAGENONE, 100, TBSTATE_ENABLED, TBSTYLE_AUTOSIZE, 202, 0, 0, 
  I_IMAGENONE, 110, TBSTATE_ENABLED, TBSTYLE_AUTOSIZE, 203, 0, 1, 
END
#endif

STRINGTABLE DISCARDABLE
BEGIN
   202 "First"
   203 "Second"
END

102 MENU DISCARDABLE
BEGIN
   MENUITEM "", 100
   MENUITEM "", 110
END

PostPosted: Thu Nov 24, 2005 4:47 pm
by Rafael Clemente
Antonio: Tu ejemplo funciona perfectamente.

Ahora, por rizar el rizo: ¿Es posible que coexistan en el mismo menú PopUps y accesos directos? He probado mil formas pero ninguna me ha funcionado.

Rafael

PostPosted: Fri Nov 25, 2005 9:22 am
by Antonio Linares
Rafael,

Como comentas, parece que no se pueden poner juntos.

Sin embargo, he visto que Excel y Word lo hacen. A ver si localizamos algún ejemplo que podamos inspeccionar con el resources workshop y vemos como lo hacen.

PostPosted: Fri Nov 25, 2005 12:45 pm
by Rafael Clemente
Vale. Gracias, Antonio
Rafael