Hallo alle zusammen!
Ich habe ein JFrame erstellt, in dem der Benutzer auswählen kann, was für eine Form er zeichnen möchte. Je nach Form kann er eben den Radius oder Länge/Breite angeben.
Mein Problem ist, dass ich es nicht schaffe, dass die Eingabe als Koordinate verwendet werden kann.
Das Programm wird gestartet aber es zeichnet einfach nichts und sobald ich den Knop "Zeichnen" drücke kommt eine Fehlermeldung:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String
ich dachte dass ich vielleicht deswegen bei dem Befehl, bei dem ich die Eingabe hole und umwandle ein ".trim()" machen muss, damit er eben nicht leer ist, hat aber leider nicht funktioniert. Vielleicht könnt ihr mir ja helfen.
++ die Fehlermeldung kommt nur bei dem Kreis (bei dem die zweite Eingabe wegfällt und somit das Feld leer bleibt. Beim Viereck kommt keine Fehlermeldung, allerdings wird es einfach nicht gezeichnet
Ich habe ein JFrame erstellt, in dem der Benutzer auswählen kann, was für eine Form er zeichnen möchte. Je nach Form kann er eben den Radius oder Länge/Breite angeben.
Mein Problem ist, dass ich es nicht schaffe, dass die Eingabe als Koordinate verwendet werden kann.
Das Programm wird gestartet aber es zeichnet einfach nichts und sobald ich den Knop "Zeichnen" drücke kommt eine Fehlermeldung:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String
ich dachte dass ich vielleicht deswegen bei dem Befehl, bei dem ich die Eingabe hole und umwandle ein ".trim()" machen muss, damit er eben nicht leer ist, hat aber leider nicht funktioniert. Vielleicht könnt ihr mir ja helfen.
++ die Fehlermeldung kommt nur bei dem Kreis (bei dem die zweite Eingabe wegfällt und somit das Feld leer bleibt. Beim Viereck kommt keine Fehlermeldung, allerdings wird es einfach nicht gezeichnet
Java:
public double bt_zeichnen_ActionPerformed(ActionEvent evt) {
if (button == false) {
button = true;
} // end of if
repaint();
double a = 1;
a = Double.parseDouble(nf_1.getText().trim());
if (cb_formen.getSelectedItem().equals("Kreis")){
double b = 1;
b = Double.parseDouble(nf_2.getText().trim());
return b;
} // end of if
return a;
} // end of bt_zeichnen_ActionPerformed
public void paint(Graphics g, double a, double b){
super.paint(g);
if (button) {
if (cb_formen.getSelectedItem().equals("Kreis")) {
g.drawOval(70, 320, (int)a, 10);
} // end of if
else {
g.drawRect(70, 320, (int)a,(int) b);
} // end of if-else
} // end of if