menu em j2me
25/03/2009
0
Fiz minha classe menu através de uma lista e um sub -menu através de uma lista tb.O problema é que não consigo carregar esta classe na classe MIDlet no método startup() através dessa linha de comando:
Display display=Display.getdisplay(app);
display.setcurrent(new ListMenu());
Não dá erro pórem tb não aparece nada na tela apenas o form com o super ´Menu´.
Criei tb um codigo que quando o usuário clicasse em ´nívéis´ aparecesse facil, medio e dificil em lista, coisa que não acontece.
Connsigo apenas carregar uma variável do tipo list no midlet e isso sim aparece na tela porem sem os comandos que implementei como o de clicar em nivel e aparecer na tela as opções facil medio e dificil e a finialização do aplicativo no comando sair .
Aqui vai o código.Ajudem-me.
Classe do Menu
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Display;
/**
*
*
*/
public class ListMenu extends Form implements CommandListener
{
List Menu,MenuNivel;
Command sair;
Display tela,meni;
public ListMenu()
{
super(´Menu´);
String[] MenuElementos={´Novo jogo´,´Níveis´,´Créditos´,´Ajuda´,´Sair´};
String[] MenuDificuldade={´Fácil´,´Médio´,´Difícil´};
//instancia da list
this.Menu=new List(´Menu´,Choice.IMPLICIT,MenuElementos,null);
this.MenuNivel=new List(´Nível´,Choice.EXCLUSIVE,MenuDificuldade,null);
//comand
this.sair=new Command(´Sair´,Command.EXIT,0);
}
public void commandAction(Command c, Displayable d)
{
if (c.getCommandType()==Command.EXIT)
{
VelhaTcc.app.notifyDestroyed();
}
if(c==List.SELECT_COMMAND && d==this.Menu)
{
//verifica qual item da lista foi selecionado
if(this.Menu.getSelectedIndex()==0)
{
}
if(this.Menu.getSelectedIndex()==1)
{
tela.setCurrent(this.MenuNivel);
}
if(this.Menu.getSelectedIndex()==2)
{
}
if(this.Menu.getSelectedIndex()==3)
{
}
if(this.Menu.getSelectedIndex()==4)
{
}
}
}
}
Classe Midlet
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
*
*/
public class VelhaTcc extends MIDlet {
public static VelhaTcc app;
public void startApp()
{
app=this;
Display display=Display.getDisplay(app);
display.setCurrent(new ListMenu());
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
}
Display display=Display.getdisplay(app);
display.setcurrent(new ListMenu());
Não dá erro pórem tb não aparece nada na tela apenas o form com o super ´Menu´.
Criei tb um codigo que quando o usuário clicasse em ´nívéis´ aparecesse facil, medio e dificil em lista, coisa que não acontece.
Connsigo apenas carregar uma variável do tipo list no midlet e isso sim aparece na tela porem sem os comandos que implementei como o de clicar em nivel e aparecer na tela as opções facil medio e dificil e a finialização do aplicativo no comando sair .
Aqui vai o código.Ajudem-me.
Classe do Menu
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Display;
/**
*
*
*/
public class ListMenu extends Form implements CommandListener
{
List Menu,MenuNivel;
Command sair;
Display tela,meni;
public ListMenu()
{
super(´Menu´);
String[] MenuElementos={´Novo jogo´,´Níveis´,´Créditos´,´Ajuda´,´Sair´};
String[] MenuDificuldade={´Fácil´,´Médio´,´Difícil´};
//instancia da list
this.Menu=new List(´Menu´,Choice.IMPLICIT,MenuElementos,null);
this.MenuNivel=new List(´Nível´,Choice.EXCLUSIVE,MenuDificuldade,null);
//comand
this.sair=new Command(´Sair´,Command.EXIT,0);
}
public void commandAction(Command c, Displayable d)
{
if (c.getCommandType()==Command.EXIT)
{
VelhaTcc.app.notifyDestroyed();
}
if(c==List.SELECT_COMMAND && d==this.Menu)
{
//verifica qual item da lista foi selecionado
if(this.Menu.getSelectedIndex()==0)
{
}
if(this.Menu.getSelectedIndex()==1)
{
tela.setCurrent(this.MenuNivel);
}
if(this.Menu.getSelectedIndex()==2)
{
}
if(this.Menu.getSelectedIndex()==3)
{
}
if(this.Menu.getSelectedIndex()==4)
{
}
}
}
}
Classe Midlet
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
*
*/
public class VelhaTcc extends MIDlet {
public static VelhaTcc app;
public void startApp()
{
app=this;
Display display=Display.getDisplay(app);
display.setCurrent(new ListMenu());
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
}
Strauss69
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)