L
lost
Gast
sieht jetzt doof aus, aber in java haut er halt ständig sternchen rein
<html>
<head><title>BMI_Rechner_Daniela</title></head>
<body>
<applet code="BMI_Rechner_Daniela.class" width="500" height="500" alt="BMI_Rechner_Daniela">
</applet>
</body>
</html>
jaa!! er hats compiliert!!
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/**
*
* Beschreibung
*
* @version 1.0 vom 23.08.2011
* @author
*/
public class apnr2 extends Applet {
// Anfang Attribute
private JLabel jLabel1 = new JLabel();
private JLabel jLabel2 = new JLabel();
private JLabel jLabel3 = new JLabel();
private JNumberField jNumberField1 = new JNumberField();
private JNumberField jNumberField2 = new JNumberField();
private JButton jButton1 = new JButton();
private JLabel jLabel4 = new JLabel();
private JLabel jLabel5 = new JLabel();
private JLabel jLabel6 = new JLabel();
// Ende Attribute
public void init() {
Panel cp = new Panel(null);
cp.setBounds(0, 0, 303, 300);
add(cp);
// Anfang Komponenten
jLabel1.setBounds(80, 33, 60, 16); //Eingabe
jLabel1.setText("Gewicht:"); //Ausgabe
jLabel1.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel1); //Verarbeitung
jLabel2.setBounds(80, 72, 51, 16); //Eingabe
jLabel2.setText("Größe:"); //Ausgabe
jLabel2.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel2); //Verarbeitung
jLabel3.setBounds(96, 208, 36, 16); //Eingabe
jLabel3.setText("BMI:"); //Ausgabe
jLabel3.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel3); //Verarbeitung
jNumberField1.setBounds(136, 28, 65, 24); // Feld für Gewicht //Eingabe
jNumberField1.setText(""); //Ausgabe
cp.add(jNumberField1); //Verarbeitung
jNumberField2.setBounds(136, 72, 65, 24); //Feld für Größe //Eingabe
jNumberField2.setText(""); //Ausgabe
cp.add(jNumberField2); //Verarbeitung
jLabel4.setBounds(208, 32, 74, 16); //Eingabe
jLabel4.setText("Kilogramm"); //Ausgabe
jLabel4.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel4); //Verarbeitung
jLabel5.setBounds(208, 72, 44, 16); //Eingabe
jLabel5.setText("Meter"); //Ausgabe
jLabel5.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel5); //Verarbeitung
jLabel6.setBounds(136, 208, 13, 16); //Eingabe
jLabel6.setText(""); //Ausgabe
jLabel6.setFont(new Font("MS Sans Serif", Font.PLAIN, 13)); //Verarbeitung
cp.add(jLabel6); //Verarbeitung
jButton1.setBounds(96, 128, 113, 41); //Eingabe
jButton1.setText("BERECHNEN"); //Ausgabe
jButton1.setMargin(new Insets(2, 2, 2, 2)); //Verarbeitung
jButton1.addActionListener(new ActionListener() { //Verarbeitung
public void actionPerformed(ActionEvent evt) { //Verarbeitung
jButton1_ActionPerformed(evt); //Verarbeitung
}
});
cp.add(jButton1); //Verarbeitung
// Ende Komponenten
}
// Anfang Methoden
public void jButton1_ActionPerformed(ActionEvent evt) { //Verarbeitung
// TODO hier Quelltext einfügen
double gewicht=0, groesse=0, bmi=0; //Eingabe
gewicht=Integer.parseInt(jNumberField1.getText()); //Eingabe
groesse=Integer.parseInt(jNumberField2.getText()); //Eingabe
bmi=gewicht/groesse; //Verarbeitung
bmi=bmi/groesse; //Verarbeitung
jLabel6.setText(String.valueOf(bmi)); //Ausgabe
}
// Ende Methoden
}
Hab alles versucht, doch mein Button funktioniert immer noch nicht!
Er funktioniert schon, aber du siehst nichts, weil dein Ausgabe Label zu kurz ist und dein Applet Fenster zu klein.
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "22,53"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at BMI.bmiBerechnen(BMI.java:78)
at BMI.actionPerformed(BMI.java:66)
public void actionPerformed(ActionEvent event){
ausgabe.setText(String.valueOf(bmiBerechnen()));
}
double bmiBerechnen(){
NumberFormat n = NumberFormat.getInstance();
n.setMaximumFractionDigits(2);
Double größeD = Double.parseDouble(größe.getText());
Double gewichtD = Double.parseDouble(gewicht.getText());
double bmi = (gewichtD / ((größeD/100) * (größeD/100)));
bmi = Double.parseDouble(n.format(bmi)); // wenn ich dies ausklammere dann funktionierts
return bmi;
}