JOptionPane com double

9 respostas
M

Olá, gostária de saber qual comando devo usar para o JOptionPane capturar uma variável do tipo double ou float
por exemplo:

package teste;
  import javax.swing.JOptionPane; 

public class teste02 {
	public static void main (String[] args) {
		int altura, peso, imc;
		
		altura = Integer.parseInt(JOptionPane.showInputDialog("Informe sua altura ( Em centímetros)"));
		peso = Integer.parseInt(JOptionPane.showInputDialog("Informe seu peso (Em quilos)"));
		altura = altura/100;
		imc = peso / (altura*altura);
		JOptionPane.showMessageDialog(null,"Seu IMC é "+imc);
		
		
	}

}

ao invés de utlizar int e o usuário ter que digitar a altura em centímetros, permitir a entrada de um valor de ponto flutuante.

Aproveitando o tópico, gostaria de saber o que devo fazer para meu .jar funcionar, estou usando o eclipse, quando exporto, ele até cria um arquivo .jar mas quando eu tento executá-lo, aparece a seguinte mensagem:
“Failed to load the Main-Class manifest attribute from <caminho do .jar>”
Faz apenas alguns dias que comecei estudar Java, então se tiver como explicar de maneira bem simples eu agradeceria muito.
Desde já obrigado pela atenção, abraços.

9 Respostas

pimenta

mid_, posta essa sua dúvida no fórum Interface Gráfica… lá pode ser que sua dúvida seja tirada mais rapidamente.

Abraços,

M

Desculpa, sou novo por aqui. obrigado pela dica, até mais.

ViniGodoy

Ao invés de Integer.parseInt, use Double.parseDouble.

No exportador de jar do eclipse, tem um campo chamado “MainClass”. Coloque nesse campo o nome da classe do seu programa que tem o main, incluindo o nome dos pacotes. Por exemplo:
meupacote.MinhaClasse

M

Muito obrigado pela informação do Double.parseDouble, ajudou bastante!

Em relação ao .jar, segui os passos que você falou, mas na hora do "meupacote.MinhaClasse " eu coloquei teste.teste02 e a opção next e a finish ficaram desabilitadas, e parece a mensgem “The selected main class is not selected for export or has no main method” , no caso do código que eu anexei acima, seria realmente teste.teste02 o correto a se colocar em Main class ?

M

Já consegui resolver o problema, muitíssimo obrigado pela ajuda.
Aproveitando o embalo, alguém pode me responder como eu faço para o programa ser encerrado quando no campo onde deveria ser inserida uma string, o usuário deixar em branco ?
por exemplo, quando for perguntado o nome do usuário, ele não digitar nenhum caracter, apenas apertar enter.

colored

Entao…

Tipo qdo vc pegar a variavel q o cara digitou q vc ja fez…

variavel = JOptionPane…

ai tu faz um if em baixo…

if(variavel.equals("")){

System.exit(0);

}
M

Deu certo, muitíssimo obrigado.
Já postei essa pergunta em outro tópico, mas como esse está mais movimentado, vou colocar aqui também
Há uma maneira de alterar o título da janela gerada pelo JOpionPane ? porque fica como padrão “Input” que não é muito agradável.
Desculpem-me pelo amontoado de perguntas, mas eu comecei a estudar esses dias e minha cabeça está cheia de dúvidas.
Mais uma vez muito obrigado a todos que postaram, foi muito útil mesmo.

Luca

Olá

mid_:
Deu certo, muitíssimo obrigado.
Já postei essa pergunta em outro tópico, mas como esse está mais movimentado, vou colocar aqui também
Há uma maneira de alterar o título da janela gerada pelo JOpionPane ? porque fica como padrão “Input” que não é muito agradável.
Desculpem-me pelo amontoado de perguntas, mas eu comecei a estudar esses dias e minha cabeça está cheia de dúvidas.
Mais uma vez muito obrigado a todos que postaram, foi muito útil mesmo.

Por favor aprenda a usar um forum. Leia as regras. [color=red] Não coloque mais de uma vez a mesma mensagem[/color]

Obrigado

[]s
Luca

M

Se ler o tópico desde o início, perceberá que eu tinha postado aqui e me falaram que postar em outra área era melhor, postei lá, mas esse tópico teve mais respostas do que aquele, então continuei postando aqui.
Sinta-se à vontade para excluir o tópico caso esteja infringindo alguma regra e desculpe-me pelo transtorno.

Criado 22 de maio de 2008
Ultima resposta 22 de mai. de 2008
Respostas 9
Participantes 5