Introducció al desenvolupament d'aplicacions per a Palm OS (8a part).

Amb la col·laboració de http://www.dactil.info/cosespalm

Els menús i altres recursos

Definir un menú
Continuem amb la definició del nostre fitxer de recursos. Una vegada vist com crear el FORM bàsic, veurem com definir els menús, el concepte és similar a la definició del formulari.

L'estructura típica és:
MENU ID EtiquetaMenu
BEGIN
 PULLDOWN "TitolMenu"
 BEGIN
  MENUITEM "Opció 1" ID idOpcio1
  MENUITEM "Opció 2" ID idOpcio2
  MENUITEM "Opció 3" ID idOpcio3
 END
END
Podem observar que un conjunt de menús es descriu dins les paraules BEGIN/END, i també que cada menú en concret també queda inclòs dins d'un PULLDOWN BEGIN/END.

Un grup de menús cal que tingui una etiqueta que l'identifica, en aquest exemple és EtiquetaMenu. També cada menú concret ha d'estar de tenir un títol (PULLDOWN "títol"), que és el que veuré l'usuari en el Palm, en aquest exemple és TitolMenu.

Les opcions del menú utilitzen la següent sintaxis:
MENUITEM "Opció 1" ID idOpcio1
  • MENUITEM - Indica que estem descrivint una opció del menú
  • "Opció 1" - El text en concret de la opció
  • ID idOpcio1 - ID és una paraula clau per indicar que a continuació escrivim l'etiqueta que identifica aquesta opció de menú en concret, idOpcio1 en aquest exemple.
Si necessitem un segon menú, tornarem a començar amb un grup de PULLDOWN BEGIN/END

Un exemple on descrivim un grup de dos menús:
MENU ID MenuPrincipal
BEGIN
 PULLDOWN "Tipografia"
 BEGIN
  MENUITEM "stdFont" ID Tipus0
  MENUITEM "boldFont" ID Tipus1
  MENUITEM "largeFont" ID Tipus2
  MENUITEM "largeBoldFont" ID Tipus7
 END
  
 PULLDOWN "Info"
 BEGIN
  MENUITEM "Crèdits ..." ID Credits
 END
END

En la pantalla del Palm, te el següent aspecte:



Pel nostre conversor d'euros, el menú tindrà la següent definició:
MENU ID MenuPrincipal
BEGIN

 PULLDOWN "Info"
 BEGIN
  MENUITEM "Crèdits ..." ID MostraCredits
 END
END

Botons, etiquetes i camps de text
D'una manera similar podem definir la resta d'elements de la interfície de la nostra aplicació. En concret pel programa d'exemple que estem desenvolupant, necessitem botons i camps de text.

Arribats a aquest punt, és bo fer-nos un croquis de la pantalla de l'aplicació. Un senzill dibuix on podem concretar quin aspecte ha de tenir, això ens ajuda a decidir els elements que necessitem i on els volem situar.


En el conversor d'Euros i d'acord a aquest croquis que hem fet necessitem:
  • Dos botons (un per convertir l'import a Euros i un altre per convertir-lo a Ptes.
  • Un camp de text per recollir l'import introduït per l'usuari
  • Un altre camp de text per mostrar el resultat de la conversió
  • Una etiqueta per mostra el text "Import:" a la pantalla
Tots aquests elements, com que son elements que estaran dins el formulari, cal definir-los dins la seva definició. Recordem que en el capítol anterior la definició del nostre formulari era tant petita com:
FORM EuroCForm AT (0 0 160 160)
 MENUID MenuPrincipal
 USABLE
BEGIN
 TITLE "Conversor d'euros / ptes." 
END
Ara cal ampliar-la fins a:
FORM EuroCForm AT (0 0 160 160)
 MENUID MenuPrincipal
 USABLE
BEGIN
 TITLE "Conversor d'euros / ptes."
 
 LABEL "Import:" AUTOID AT (10 30) USABLE FONT 1
 FIELD ID AgImport AT (50 30 100 55) USABLE LEFTALIGN FONT 1 EDITABLE MAXCHARS 12 AUTOSHIFT UNDERLINED
 FIELD ID MtResultat AT (10 120 140 55) USABLE LEFTALIGN FONT 1 NONEDITABLE AUTOSHIFT UNDERLINED
 
 BUTTON " Convertir a EUROS " ID BtEuros AT (CENTER 60 AUTO AUTO) USABLE BOLDFRAME FONT 1
 BUTTON " Convertir a PTES. " ID BtPtes AT (CENTER 81 AUTO AUTO) USABLE BOLDFRAME FONT 1
END

Tot això una vegada compilat es convertirà en:


En concret podem veure tres noves paraules clau (marcades en vermell) per definir recursos:

LABEL - L'utilitzem per posar textos a pantalla (en el formulari), textos estàtics que sovint son títols o instruccions.
FIELD - Ens permet definir un camp de text. L'element que utilitzara l'usuari per tal d'escriure, i on nosaltres (la nostra aplicació) podrem rebre el que l'usuari ha introduït. També els utilitzem per escriure directament des de dins l'aplicació, es a dir que els utilitzem com un element per mostrar informació generada pel programa
BUTTON - Defineix un botó en el formulari, que actuara (avisara al nostre programa amb un event) quan l'usuari el premi amb l'stylus.

Cada un d'aquest tres recursos necessita com a mínim una posició de pantalla on el situem (dins el formulari) i una etiqueta identificativa (les dues coses les he marcat en verd), la resta son paràmetres propis de cada recurs i que serveixen per personalitzar-ne el comportament (els marcat en blau). Els paràmetres que es poden utilitzar estant descrits en detall en el manual del PilRC.

En el proper capítol parlarem de les icones, les seves característiques usos i creació. I ja tindrem enllestit tot el nostre fitxer de recursos.

Següent: Introducció al desenvolupament d'aplicacions per a Palm OS (9a part).
Anterior: Introducció al desenvolupament d'aplicacions per a Palm OS (7a part)

Comentaris

Entrades populars d'aquest blog

Els camins del paradís perdut - Llorenç Riber

Ens hem traslladat a palmcat.tiddlyspot.com

Conversió de text a parla en català