[RESOLVIDO] HELP Com JOptionPane

8 respostas
rafaelaalves

Estou usando o confirm Dialog,
Bom eu tenho duas opções sim e não.
Eu quero que quando o usuário clique NÃO, feche o frame.
E se usuário Clique SIM continue o cadastro.
Cmo faço isso?
Lá vai o codigo!

boolean aux = false;
    		    JDialog.setDefaultLookAndFeelDecorated(true);
    		    int response = JOptionPane.showConfirmDialog(null, "O ALUNO JÁ POSSUI EMPRÉSTIMO PENDENTE!\n PERMITIR EMPRÉSTIMO MESMO ASSIM?" , "Confirme",
    		        JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
    	if 	 (response == JOptionPane.NO_OPTION) {
    		   aux = false;
    		    	// colocar o que acontece
    		    } else if (response == JOptionPane.YES_OPTION) {
    		     
    		    aux = true;
    		    } else if (response == JOptionPane.CLOSED_OPTION) {
    		      //Acho que nao necessita de informações;
    		    }
    		  if (aux){

    			
    		  }

8 Respostas

rafaelaalves

Bom ja descobri o NÃO!
apenas System.out.print(0);
Mas o sim… ainda nao

I

Quando vc clica em qualquer um dos dois botões desse dialog, ele vai fechar e retornar algum valor. Caso retorne o SIM vc trata, caso contrário não precisa fazer nada

rafaelaalves

Eu ja sei disso,
queria saber como faço o tratamento.
Para que quando ele clique sim, o cadastro continue sendo efetuado.
tipo.
Deseja continuar fazendo o cadastro?
Aí, se sim.!
Como ele continua isso?

I

Sua mensagem é:

JOptionPane.showConfirmDialog(null, "O ALUNO JÁ POSSUI EMPRÉSTIMO PENDENTE!\n PERMITIR EMPRÉSTIMO MESMO ASSIM?" , "Confirme",  
                JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE)

Vc quer saber como proceder caso o usuário clique em sim correto?
Caso ele clique em sim o que deve acontecer? Abrir uma nova janela? É só colocar o código do que deve acontecer dentro da opção YES do seu if:

if (aux){ 
      new TelaEmprestimo().setVisible(true);
}

Esse é apenas um exemplo simples

jlsoliveirajr

tenta assim!

int resp = JOptionPane.showConfirmDialog(null, "O ALUNO JÁ POSSUI EMPRÉSTIMO PENDENTE!\n "
             + "PERMITIR EMPRÉSTIMO MESMO ASSIM?" , "Confirme",  
                JOptionPane.YES_NO_OPTION); 
     
     if(resp == 0){
     //Cai no Sim
     //Faz Algo    
     }else{
     //Cai no Não
     //Faz Algo
     }
fejohann

OU assim:

JDialog.setDefaultLookAndFeelDecorated(true);
    		    int response = JOptionPane.showConfirmDialog(null, "O ALUNO JÁ POSSUI EMPRÉSTIMO PENDENTE!\n PERMITIR EMPRÉSTIMO MESMO ASSIM?" , "Confirme",
    		        JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
    	            if(response == JOptionPane.NO_OPTION) {
    		   dispose(); //fecha a frame atual...
    		    	
    		    } else if (response == JOptionPane.YES_OPTION) {
    		     //não faz nada pois não precisa... vai dar o dialogo e voltar a tela...
    		    } else if (response == JOptionPane.CLOSED_OPTION) {
    		     
    		    }
G

Fejohann falou o que eu ia dizer…

é só não fazer nada que ele continuará a fazer oq ue estava fazendo… ( cadastro )

Os retornos, se não me engano, são : -1, 0 e 1… para Sim, não e cancela…

Basta testar.

rafaelaalves

Valeu fejohann, Gabriel, jlsoliveirajr eu ja tava nessa duvida, mas obg :slight_smile:
e ismaellg muito interessante o que você mencionou.
Obrigado meninos, vocês agregaram conhecimento em mim… Valeu -

Criado 20 de outubro de 2011
Ultima resposta 21 de out. de 2011
Respostas 8
Participantes 5