fiz este codigo mas não executa nada quando clico no botão.
[b]
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
if ((jTextField1 !=null)&&(jTextField2 !=null) &&(malhaSim.isSelected()))
{nivel = Integer.parseInt(JOptionPane.showInputDialog(null,“Digite quantas vezes você malha por semana”));
switch(nivel){
case 1 :
peso_ideal = peso_ideal + 2;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 2 :
peso_ideal=peso_ideal +3;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 3 :
peso_ideal=peso_ideal +5;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 4 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 5 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 6 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 7 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
default:
JOptionPane.showMessageDialog(null,“Valor inválido”);
}
}
else if ((jTextField1 ==null)&&(jTextField2 ==null) &&(malhaNao.isSelected())){
JOptionPane.showMessageDialog(null, “Valores inválidos”);
}
}[/b]
Coloque entre a Tag Code
malhaSim.isSelected() ?? isso é um radioBox??
lina
Março 15, 2010, 10:24am
#3
Oi,
hummmm você adicionou uma ação para seu botão?
Só uma observação, a condição:
if ((jTextField1 !=null)&&(jTextField2 !=null)
deveria ser feita antes de utilizar o jTextField1 e 2:
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
Isso evitará NullPointerException.
Tchauzin!
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
if ((jTextField1 !=null)&&(jTextField2 !=null) &&(malhaSim.isSelected()))
{nivel = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite quantas vezes você malha por semana"));
switch(nivel){
case 1 :
peso_ideal = peso_ideal + 2;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 2 :
peso_ideal=peso_ideal +3;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 3 :
peso_ideal=peso_ideal +5;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 4 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 5 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 6 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 7 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
default:
JOptionPane.showMessageDialog(null,"Valor inválido");
}
}
else if ((jTextField1 ==null)&&(jTextField2 ==null) &&(malhaNao.isSelected())){
JOptionPane.showMessageDialog(null, "Valores inválidos");
}
}
é uma malhaSim e malhaNao é radiobox
Mostra a ação do seu botão quenem a Lina falou
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
if ((jTextField1 !=null)&&(jTextField2 !=null) &&(malhaSim.isSelected()))
{nivel = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite quantas vezes você malha por semana"));
switch(nivel){
case 1 :
peso_ideal = peso_ideal + 2;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 2 :
peso_ideal=peso_ideal +3;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 3 :
peso_ideal=peso_ideal +5;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 4 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 5 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 6 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 7 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
default:
JOptionPane.showMessageDialog(null,"Valor inválido");
}
}
else if ((jTextField1 ==null)&&(jTextField2 ==null) &&(malhaNao.isSelected())){
JOptionPane.showMessageDialog(null, "Valores inválidos");
}
}
/*
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new jfJanela().setVisible(true);
}
});
}
lina
Março 15, 2010, 10:36am
#7
Oi,
Primeiro a sua codificação deveria estar entre Try/Catch(NumberFormatException).
Provavelmente entra na ação do botão e sai por exceção. E a condição do != null deve ser antes como falei anteriormente:
try
{
if (jTextField1 != null && jTextField2 != null) {
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
if(malhaSim.isSelected())
{nivel = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite quantas vezes você malha por semana"));
switch(nivel){
case 1 :
peso_ideal = peso_ideal + 2;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 2 :
peso_ideal=peso_ideal +3;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 3 :
peso_ideal=peso_ideal +5;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 4 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 5 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 6 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
case 7 :
peso_ideal = peso_ideal +8;
JOptionPane.showMessageDialog(null,"Seu peso ideal é"+peso_ideal+"");
break;
default:
JOptionPane.showMessageDialog(null,"Valor inválido");
}
}
else if ((jTextField1 ==null)&&(jTextField2 ==null) &&(malhaNao.isSelected())){
JOptionPane.showMessageDialog(null, "Valores inválidos");
}
}
}
}
catch (NumberFormatException ex) {
System.out.println("Formato de número inválido");
}
Tchauzin!
Possivelmente o problema está nos seus IFs… quando vc diz (jTextField1 !=null) vc quer realmente saber se o objeto é diferente de nulo? ou vc quer saber se o usuário digitou algum valor?
Testa se esse seu malhaSim.isSelected() está funcionando assim ó:
boolean isMalha = malhaSim.isSelected();
JOptionPane.showMessageDialog(null,"Malha : "+isMalha);
Verdade
note
altura = Float.parseFloat(jTextField1.getText()); <--- voce está definindo o Altura como o jTextField
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
if ((/*jTextField1*/altura>=0)&&(/*jTextField2*/peso >=0) &&(malhaSim.isSelected()))
No caso da Lina você vai fazer
if (jTextField1.getText().equals(null) && jTextField2.getText().equals(null) && jTextField1.getText().length() >0 && jTextField2.getText()length() >0) {
[code]private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
if (jTextField1.getText().length()>0 && jTextField2.getText().length()>0){
altura = Float.parseFloat(jTextField1.getText());
peso = Float.parseFloat(jTextField2.getText());
peso_ideal = altura - 100;
} if (malhaSim.isSelected())
{nivel = Integer.parseInt(JOptionPane.showInputDialog(null,“Digite quantes vezes malha por semana”));
switch (nivel){
case 1 :
peso_ideal = peso_ideal + 2;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 2 :
peso_ideal = peso_ideal + 3;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 3:
peso_ideal = peso_ideal + 5;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 4:
peso_ideal = peso_ideal + 5;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 5:
peso_ideal = peso_ideal + 7;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 6:
peso_ideal = peso_ideal + 10;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
case 7:
peso_ideal = peso_ideal + 10;
JOptionPane.showMessageDialog(null,“Seu peso ideal é”+peso_ideal+"");
break;
default:
JOptionPane.showMessageDialog(null,“Valor inválido”);
}
}
else if (malhaNao.isSelected()){
peso_ideal = (altura -100) +1;
JOptionPane.showMessageDialog(null,“Seu peso ideal é:”+peso+"");
}}
catch (NumberFormatException ex) {
System.out.println(“Formato de número inválido”);}}
/*
* @param args the command line arguments
*/[/code]
Fiz assim, mas to tendo problemas para obter o valor de peso_ideal. Não ta calculando peso_Ideal= altura -100;
Na verdade, não ta pegando o valor de altura e peso.
se eu coloco altura = 0 e nivel = 1
ele me da o resultado peso_ideal = -98
ta certo cara…
ta 0 - 100 = -100
qdo cai no seu case 1: ele soma 2
-100 + 2 = -98
Cuidado que esse jTextField1.getText().equals(null) não existe, se uma String for nula compara-se com ==
então para certificar-se que uma String possui algum texto sem que ocorra nullpointer é necessário fazer:
if(!"".equals(str)){ //Se a str é diferente de "" (vazia)
//codigo
}
e para validar apenas se a String está nula (objeto null):
if( str == null){
//codigo
}
lina
Março 16, 2010, 8:46am
#15
Oi,
Ninguem aqui ouviu falar do método isEmpty() ?
if (str.isEmpty()) {
System.out.println("É vazia");
}
else
{
System.out.println("Não é vazia");
}
Tchauzin!