Como utilizat o setCurrent

2 respostas
J

Senhores(as),

Não me zombem pela dúvida, sou iniciante em J2ME e estou com o seguinte problema:
Tenho uma aplicação que ao enviar dados ao servidor deve retornar ao usuario uma mensagem de ok e retorne ao menu principal. Para isso estou utilizando o código abaixo:

try{

CommandQueue.getInstance().add(comando);

FlashCommandQueue.getInstance().add(comandoFlash);

BaixaOnline.getInstance().getDisplay().setCurrent(Menu.getInstance());

Alert a = new Alert(“Ok”, “Operação efetuada com sucesso”, null, <a href="http://AlertType.INFO">AlertType.INFO</a>);

a.setTimeout(Alert.FOREVER);

BaixaOnline.getInstance().getDisplay().setCurrent(a);

}

catch(RecordStoreException e){

Alert a = new Alert(“Erro”, “Falha na Comunicação–record”, null,

AlertType.ERROR);

a.setTimeout(Alert.FOREVER);

BaixaOnline.getInstance().getDisplay().setCurrent(a);

e.printStackTrace();

BaixaOnline.getInstance().notifyDestroyed();

}

catch(IOException e){

Alert a = new Alert(“Erro”, “Falha na Comunicação–ioexception”, null,

AlertType.ERROR);

a.setTimeout(Alert.FOREVER);

BaixaOnline.getInstance().getDisplay().setCurrent(a, this);

e.printStackTrace();

BaixaOnline.getInstance().notifyDestroyed();

}

catch(Exception e){

Alert a = new Alert(“Erro”, “Falha na Comunicação—estou no exception”, null,

AlertType.ERROR);

a.setTimeout(Alert.FOREVER);

BaixaOnline.getInstance().getDisplay().setCurrent(a);

e.printStackTrace();

BaixaOnline.getInstance().notifyDestroyed();

}

percebam que primeiro chamo a tela principal em seguida exibo o alert. O problema é que no emulador funciona, mas no celular não.

Podem me ajudar, por favor?

2 Respostas

P

As coisas não funcionam assim.
Ou vc exibe um ou outro.
Dado que o Alert foi o último mandado a ser exibido é ele que ao final deste método será, pois vc está fazendo na event thread…(xi…seria que eu deveria ter mencionado isto ?)

Enfim, faça o setCurrent (a, meuForm) e vc tem uma chance de chegar aonde quer.

J

Obrigado pela resposta.

Tentei utilizar esta opção do setCurrent com dois argumentos, porem o resultado é o mesmo…

Essa oção de utilizar threads para disparar essa mensagem foi de encontro ao que eu estava pensando, porém ainda nao sei como.

Pode sugerir algo?

Abcs,

Criado 15 de outubro de 2010
Ultima resposta 18 de out. de 2010
Respostas 2
Participantes 2