NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Capitolo 09: La classe Command.

 

La classe Command identifica tutte le operazioni che l'utente può svolgere sul dispositivo.

In generale, se non sono presenti oggetti Command, difficilmente l'utente riuscirà a 'fare qualcosa': un Command serve proprio a 'muoversi' tra i vari Displayable dell'applicazione.

 

 

I costruttori di Command sono:

  • Command(String label, int type, int priority);
  • Command(String shortLabel, String longLabel, int type, int priority); .

 

 

I tipi di comandi possibili, da passare come parametro "type", sono:

BACK Per tornare alla schermata precedente.
CANCEL Per indicare una risposta negativa ("Cancella", "No", ...).
OK Per confermare, indicare risposta positiva.
HELP Per visualizzare l'help online.
EXIT Per terminare l'applicazione.
ITEM Comando specifico dell'applicazione.
SCREEN Comando specifico dell'applicazione.
STOP Come suggerisce il nome, utilizzato per interrompere / mettere in pausa qualcosa.

 

 

Il campo priority serve a specificare il livello di priorità (utilizzato da J2ME in fase di visualizzazione del comando) del Command in questione.

La label è la scritta che verrà visualizzata a schermo e che identificherà il Command sul display.

 

Metodi utili messi a disposizione da tale classe sono:

getCommandType()   :   int Restituisce il tipo di comando (vd. sopra).
getLabel()   :   String Restituisce l'etichetta breve del comando.
getLongLabel()   :   String Restituisce l'etichetta estesa del comando.
getPriority()   :   int Restituisce il livello di priorità del comando.

 

La seguente porzione di codice identifica una MIDlet che mostra a video un Command di tipo EXIT,  visualizzato sullo schermo mediante la scritta "Esci"; ad ogni modo, premendo il tasto posizionato vicino al Command non accadrà nulla, in quanto non abbiamo creato un gestore degli eventi per questa MIDlet, ma di questo argomento parleremo nel prossimo capitolo.

Ecco il codice:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;


public class Prova extends MIDlet
{
private Display d;
private Form f;
private Command esci;


public Prova()
{
d = Display.getDisplay(this);
f = new Form("Form di prova");
esci = new Command("Esci", Command.EXIT, 0);
f.addCommand(esci);
d.setCurrent(f);
}

protected void startApp()
{
}

protected void pauseApp() { }

protected void destroyApp(boolean arg0)
{
notifyDestroyed();
}
}

Per realizzare questa MIDlet si è reso necessario istanziare un oggetto Form da agganciare al Display e al quale aggiungere, con il metodo addCommand(Command c), il Command 'esci'; Form è un oggetto Displayable che verrà presentato in maniera approfondita tra qualche capitolo, per il momento ignoratelo.

 

 
Vai all'inizio della pagina