Boa noite pessoal, sou iciniante em java, gostaria que voces me ajudassem com um probleinha o código abaixo ira exemplificar meu problema:
System.out.println("Para visualizar o menu pressione 1 ou pressione 2 para nao visualizar o menu");
op = scan.nextInt();
do {
if (op == 1) {
System.out.println("1. VVT = Valor Venal do Terreno |\t 2. AT = Área do terreno |\t 3. VM = Valor do metro quadrado por padrao de rua |\t 4. Fst = Fator de influencia da situação do terreno ");
System.out.println("5. Fet = Fator de influencia de esquina ou numero de testada |\t 6. Fct = Fator de influencia de caraciterística do terrreno |\t 7. Fge = Fator geometrico |\t ");
System.out.println("8. Fgl = Fator gleba |\t 9. Fmp = Fator de melhorias publicas |\t 10. Fdat = Fator de depriciação em função da área de tombamento |\t ");
break;
}else if (op == 2 ){
System.out.println("Voce optou por não visualizar o menu");
break;
}
else {
JOptionPane.showMessageDialog(null, "Por favor selecione um número válido");
}
}while (op != 1 || op !=2);
Toda vez que o JOptionPane entra em ação ele exibe uma caixa de dialogo e quando clico em OK ele simplesmente nai fecha criando varias janelas tornando-se impossivel de fecha-las !
Atenciosamente
A instruções acima devem ficar dentro do laço de repetição.
Assim a variável op deixa de se comportar como uma constante.
do {
System.out.println(“Para visualizar o menu pressione 1 ou pressione 2 para nao visualizar o menu”);
op = scan.nextInt();
if (op == 1) {
System.out.println("1. VVT = Valor Venal do Terreno |\t 2. AT = Área do terreno |\t 3. VM = Valor do metro quadrado por padrao de rua |\t 4. Fst = Fator de influencia da situação do terreno ");
System.out.println("5. Fet = Fator de influencia de esquina ou numero de testada |\t 6. Fct = Fator de influencia de caraciterística do terrreno |\t 7. Fge = Fator geometrico |\t ");
System.out.println("8. Fgl = Fator gleba |\t 9. Fmp = Fator de melhorias publicas |\t 10. Fdat = Fator de depriciação em função da área de tombamento |\t ");
break;
}else if (op == 2 ){
System.out.println(“Voce optou por não visualizar o menu”);
break;
}else {
JOptionPane.showMessageDialog(null, “Por favor selecione um número válido”);
}
}while (op != 1 || op !=2);
Olá Tag, muito obrigado pela resposta realmente eu nao tinha prestado atenção nesse detalhe, mas infelizmente, mesmo com as alterações a tela do JOptionPane quando clico no ok ela simplismente nao fecha, ou seja ele fica travado ali !
do {
System.out.println("Para visualizar o menu pressione 1 ou pressione 2 para nao visualizar o menu");
op = scan.nextInt();
if (op == 1) {
System.out.println("1. VVT = Valor Venal do Terreno |\t 2. AT = Área do terreno |\t 3. VM = Valor do metro quadrado por padrao de rua |\t 4. Fst = Fator de influencia da situação do terreno ");
System.out.println("5. Fet = Fator de influencia de esquina ou numero de testada |\t 6. Fct = Fator de influencia de caraciterística do terrreno |\t 7. Fge = Fator geometrico |\t ");
System.out.println("8. Fgl = Fator gleba |\t 9. Fmp = Fator de melhorias publicas |\t 10. Fdat = Fator de depriciação em função da área de tombamento |\t ");
break;
} else if (op == 2) {
System.out.println("Voce optou por não visualizar o menu");
break;
} else {
JOptionPane.showMessageDialog(null, "Por favor selecione um número válido");
}
} while (op != 1 || op != 2);
Testei e funcionou normal.
Realmente Tag, acho que era algum problema que estava aconteendo no compilador !
Obrigado
[RESOLVIDO]