Senhores, estou deselvolvendo um framework de UI que já possui Label, Field, VirtualKeyboard, List, ComboBox, GridView, Button, RadioButton (com groupIndex ) e CheckBox.
Até ai tudo bem, mas ao criar o componente MessageBox me deparei com um problema…
Como pausar a execução do programa até que o usuário clique num dos botões “Ok” ou “Cancela”??? Como é feito no Alert do LCDUI.
Após instanciado o objeto MessageBox, o código continua sendo executado na sequência (até ai é de se esperar).
Preciso que o código fique em “loop” até que um atributo “value” seja valorado, mas a condição para que este atributo seja alterado é o clique num dos botões deste componente, que é feito através do evento pointerReleased.
A questão é se há alguma forma de eu ler o evento de pointerReleased de dentro do meu loop de espera…
Algo como:
while (value==0){
int x,y=0;
x=getPositionX();
y=getPositionY();
actionPointerReleased(x,y); // Aqui o atributo value é alterado para 1, 2 ou 3… conforme a corrdenada x/y passada
}
Já tentei com definir o componente como thread e usar a chamada serviceRepaints(); mas também não rolou…
Alguma luz?!
Da uma olhada na classe javax.swing.JDialog.
Ela possui tal função
Certo Mikhas, mas tem um detalhe que não especifiquei, a aplicação roda em Midp2.0 CLDC1.1.