JavaFX TextField auf Datentyp prüfen

Statcher

Mitglied
Hallo,
ich habe hier ein JavaFX Programm welches die MwSt von einem Betrag ausrechnet.
Code:
package application;

import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.Pane;



public class Main extends Application {
    @Override
    public void start(Stage primaryStage) {
        try {
            GridPane root = new GridPane();
            Scene scene = new Scene(root,400,400);
            root.setVgap(10);
            root.setHgap(5);
            primaryStage.setTitle("Rechner");
            Label l1 = new Label("Betrag: ");
            Label l2 = new Label("MwSt(%): ");
            Label l3 = new Label("Ergebnis: ");
            Label l4 = new Label("Status: ");
            TextField text1 = new TextField();
            TextField text2 = new TextField();
            TextField text3 = new TextField();
            Button b = new Button("berechnen");
           
            root.add(l1, 1, 1 );
            root.add(l2, 1, 2);
            root.add(l3, 1, 3);
            root.add(l4, 2, 6);
            root.add(text1, 2, 1);
            root.add(text2, 2, 2);
            root.add(text3, 2, 3);
            root.add(b, 2, 5);
            b.setOnAction(event ->{
                float betrag = Float.parseFloat(text1.getText());
                float mwst = Float.parseFloat(text2.getText());
                mwst = mwst/100 +1;
                float ergebnis = betrag * mwst;
                String ergebnis2 = Float.toString(ergebnis);
                text3.setText(ergebnis2);
            });
           
            primaryStage.setScene(scene);
            primaryStage.show();
           
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
   
    public static void main(String[] args) {
        launch(args);
    }
}

Ich würde gerne ,wenn z.B. bei Betrag "abcd" eingegeben wird und dann auf den "berechnen" Button gedrückt wird das ein Fehlermeldung ausgegeben wird.
Allerdings weiß ich nicht wie ich das überprüfen soll ,da text1.getText() ja schon einen String zurückgibt.
Könnt ihr mir da bitte helfen?
 
Du holst dir den Text aus dem Textfeld und schaust dann bspw. mit regulären Ausdrücken nach, ob der Inhalt dem entspricht was du gerne hättest.
 

Zurück
Oben