Eu tenho este JOptionPane e queria saber se alguem me podia ajudar, porque este painel quando eu faço “yes” ele entra no “if” e faz “System.exit(0);” e feixa-me a aplicação. Gostava de saber como faço para ele em vez de fechar aplicação cancelar apenas a operação que tou a fazer.
Abraço
int i = JOptionPane.showConfirmDialog(null ,"Deseja fechar a aplicação?",
"Saída",JOptionPane.YES_NO_OPTION);
if (i == JOptionPane.YES_OPTION ) {
System.exit(0);
}
int i = JOptionPane.showConfirmDialog(null ,"Deseja fechar a aplicação?",
"Saída",JOptionPane.YES_NO_OPTION);
if (i == JOptionPane.YES_OPTION ) {
System.exit(0);
} else {
//bote sua operaçao aqui!
}
if (i == JOptionPane.YES_OPTION ) {
System.exit(0);
}
vc está comparando se o valor da variavel i é igual ao valor
JOptionPane.YES_OPTION
Quando vc coloca a Opção
JOptionPane.YES_NO_OPTION
Vc esta falando que deseja que aparece dois botões na dialog o YES e o NO
e que cada botão tem um valor fixo que retorna para a variavel
i e depois vc fez a comparação para saber se o valor
da variavel era igual ao valor retornado da messagem
existe tambem
JOptionPane.NO_OPTION //se clicou no botão No
//e o JOptionPane.CANCEL_OPTION//este e para quando vc usa JOptionPane.YES_NO_CANCEL_OPTION, usando esta opção vai aparecer três botoes YES, NO, CANCEL
ai vc faz as verificaçoes
if( variavel == JOptionPane.YES_OPTION )
//faz operação
else if( variavel == JOptionPane.NO_OPTION )
//faz operação
else
//faz operação
está são as operações para o JOptionPane.showConfirmDialog() ou
JOptionPane.showInternalConfirmDialog()
ate
Quando vc atribui uma entrada JOptionPane.YES_NO_OPTION a uma variavel, essa variavel recebe o valor inteiro de 1 ou 0. 1 para YES_OPTION, e 0 para NO_OPTION.
int i = JOptionPane.showConfirmDialog(null ,“Deseja fechar a aplicação?”,