zrobin
Goto Top

Hilfe zu Java Double Variable und JOptionPane

Hey!

Ich bin relativ neu in Java und brauche eure Hilfe!

Und zwar habe ich ein JOptionPane erstellt, bei dem man die Zahl für eine Double-Variable eingeben muss.

Wenn man einen Buchstaben stat einer Zahl eingibt, schliest sich das OptionPane einfach.

Meine Frage:

Wie kann ich eine Errornachricht einstellen, sodass die nachricht "Bitte gebe keine Buchstaben ein!" kommt, wenn
man einen Buchstabe eingibt.

else if (e.getSource() == baddieren){
                    Double ZAD1 = Double.parseDouble(JOptionPane.showInputDialog("Bitte geben sie eine Zahl ein."));  

Content-Key: 366435

Url: https://administrator.de/contentid/366435

Printed on: April 25, 2024 at 16:04 o'clock

Member: colinardo
colinardo Feb 28, 2018 updated at 17:11:28 (UTC)
Goto Top
Servus,
wenn du unbedingt auf den Dialog bestehst und du dir nicht einen eigenen Dialog mit Eingabe-Events bauen kannst/willst dann schau dir das mal an:
// Variable hält den Input der Eingabe
String Eingabe = "";  

// Wiederhole die Eingabe solange bis ein gültiger Wert eingegeben wurde oder Abbrechen geklickt wurde
do {
    // Input Dialof aufrufen
    Eingabe = JOptionPane.showInputDialog(null,"Bitte Zahl eigeben:","Eingabe",JOptionPane.QUESTION_MESSAGE);  

    // Wenn Abbrechen bestätigt wurde beende Prozedur
    if (Eingabe == null){
        return;
    }else if(!Eingabe.matches("\\d+")){  
         // Wert ist keine Zahl, zeige Fehlerdialog
        JOptionPane.showConfirmDialog(null,"Nur Zahlen erlaubt","Fehler",JOptionPane.DEFAULT_OPTION,JOptionPane.ERROR_MESSAGE);  
    }
}while(!Eingabe.matches("\\d+"));  

// wandele den String zu einem Double Wert
Double zahl = Double.parseDouble(Eingabe);

// zeige den Wert an (als Beispiel)
JOptionPane.showConfirmDialog(null,"Ihre Eingabe: " + Eingabe,"Ausgabe",JOptionPane.DEFAULT_OPTION,JOptionPane.INFORMATION_MESSAGE);                    
Grüße Uwe