Dúvidas com JOptionPane

3 respostas
illa_Silva_Barros

Olá galera,

Criei um Aplicativo uzando o swing JOptionPane, é um controle de gastos de combustíveis bem legal…
Estou com uma dúvida, que na função showInputDialog, esta dando erro quando eu clico em “Cancelar” em vez de “Ok” para o aplicativo cancelar a execução…

O que eu devo fazer para que o programa cancele a execução quando eu clicar em “Cancelar” na janelinha do JOptionPane???

Aaaah, e outro bug que eu ja quebrei a cabeça…
Pq a janela do JOptionPane, só aceita o caracter " . " (ponto final) para variaveis ‘double’ e nao aceita " , " (virgula), ja que o programinha precisa que o usuario entre com valores quebrados…

Um exemplo esta este abaixo (que nao esta dando certo quando clico em “Cancelar”…


litros_km = Double.parseDouble(JOptionPane.showInputDialog(null, "Informe a qtd de Litros/KM que seu carro faz: ", “Litros/KM”, 3));

qtd_km = Double.parseDouble(JOptionPane.showInputDialog(null, “Informe a quantidade de KM a ser percorrido”, “Quantidade de KM”, 3));


Se alguem poder me ajudar, eu agradeço MUITO! Só falta isso para o aplicativo ficar Zero bala…

Att,

Átilla Barros.

3 Respostas

T

não aceita virgula pois se refere a double e não a String, padrão americano de trabalhar com numeros quebrados é ponto, se fosse String seria possivel usar a virgula

A

Olá, basta você utilizar uma estrutura de decisão,

if(litros_km == null) system.exit(0);//para cancelar o aplicativo e limpar a memória
if(litros_km == null)break;//serve apenas para parar o laço, para encerrar o aplicativo use a estrutura a cima.

Obs. para isto funcionar, você deve primeiramente armazenar o dado em uma String, e após a comparação ae sim converter para um tipo numerico

illa_Silva_Barros

ISSOOOOOOO! heheheh

Valeu cara! Deu certinho, declarei as variaveis que recebem valores como String,
o swing JOptionPane ja coleta valores do teclado como String, depois só converti para double (Double.parseDouble)
e uzei a estrutura de decisão com o System.exit(0) como vc ensinou. Compilou perfeito!

Muito obrigado!

Att,

Átilla Barros.

Criado 30 de maio de 2010
Ultima resposta 2 de jun. de 2010
Respostas 3
Participantes 3