Hallo Leute
Ich habe folgenden Code:
Kurz: Ein Applet, wo ich die Fläche eines Dreiecks unter Angabe aller drei Seitenlängen berechne. Nun habe ich im actionPerformed ja die Methode parseInt, welche wenn statt einer Zahl ein Text übergeben wird eine NumberFormatException wirft. Soweit so gut.
Mein Problem ist nun: Wie fange ich das genau ab? Ich könnte um diesem Block:
mit try und catch arbeiten, aber im catch kann ich ja gar keine Fehlermeldung ausgeben. Das geht ja nur im Paint. Hoffe ihr versteht was ich meine ;-)
Danke schonmal für eure Hilfe.
Ich habe folgenden Code:
Code:
public void paint(Graphics g) {
g.drawString("inta: " + inta, 50, 70);
g.drawString("intb: " + intb, 50, 90);
g.drawString("intc: " + intc, 50, 110);
try {
g.drawString("Das Resultat ist: " + berechne(inta, intb, intc), 50, 50);
} catch (NumberFormatException e3) {
g.drawString("" + e3.getMessage(), 50, 50);
}catch (IllegalArgumentException e1) {
g.drawString("Fehlermeldung: " + e1.getMessage(), 50, 50);
} catch (Exception e2) {
g.drawString("Argumente nicht erlaubt: " + e2.getMessage(), 50, 50);
}
}
public void actionPerformed(ActionEvent myEvent) throws NumberFormatException {
if (myEvent.getSource() == a) {
}
if (myEvent.getSource() == b) {
}
if (myEvent.getSource() == c) {
}
if (myEvent.getSource() == senden) {
inta = Integer.parseInt(a.getText());
intb = Integer.parseInt(b.getText());
intc = Integer.parseInt(c.getText());
repaint();
}
}
public double berechne(double a, double b, double c) {
return Math.sqrt((a + b + c)*(a + b - c)*(b + c - a)*(c + a - b)) / 4;
}
Kurz: Ein Applet, wo ich die Fläche eines Dreiecks unter Angabe aller drei Seitenlängen berechne. Nun habe ich im actionPerformed ja die Methode parseInt, welche wenn statt einer Zahl ein Text übergeben wird eine NumberFormatException wirft. Soweit so gut.
Mein Problem ist nun: Wie fange ich das genau ab? Ich könnte um diesem Block:
Code:
inta = Integer.parseInt(a.getText());
intb = Integer.parseInt(b.getText());
intc = Integer.parseInt(c.getText());
repaint();
Danke schonmal für eure Hilfe.