Posso declarar uma variável tipo Boolean que terá seu valor atribuido através da opção showConfirmDialog??? Para teste com o resultado dessa atribuição quais valores devo usar?? 0 e 1???
intopcao=JOptionPane.showConfirmDialog(null,"Escolha sim ou não","Sim ou não?",JOptionPane.YES_NO_OPTION);booleanflag;flag=opcao==JOptionPane.YES_OPTION;
cassio
Não, o JOptionPane.showConfirmDialog retorna somente um inteiro, não boolean. sào tipos diferentes, não tem como associar diretamente assim.
Você tem que usar um int mesmo para pegar o retorno do método.
Mas acho que o mínimo para o showConfirmDialog sào três opções, não?! Sim, Não e Cancelar… eu acho… talvez esteja enganado.
Dai vc terá que avaliar com inteiro mesmo… Porme a classe já fornece umas constantes pré-definidas!
JOptionPane.OK_OPTION
JOptionPane.CANCEL_OPTION
etc…
Dá uma olhada na api!
Abraço!
A
arviana
Cassio,
Entendi. Mas tenho o seguinte:
int escolha = JOptionPane.showConfirmDialog(null,“Deseja tentar novamente?”);
O retorno é 0 ou 1???
if(escolha=0){
System.exit(0);
}
Tá dando o erro: Type mismatch: cannot convert from int to boolean.
Outra dúvida é que se atender a condição como faço pra dar início a aplicação novamente???
T
thingol
Eu lhe respondi acima que não sei se é zero ou um, e isso não quero saber.
Só sei que é uma das constantes: JOptionPane.YES_OPTION,
JOptionPane.NO_OPTION, JOptionPane.CANCEL_OPTION. Se é zero ou um ou 20 ou 300 ou -1, só olhando no código-fonte do Java.
Acostume-se a usar as constantes, para que seu código fique mais claro.
Além disso, a comparação é com “==”, não “=” (que é o que está provocando o tal do “type mismatch” no seu caso.).