JavaFX Chioceboxen verküpfen

Diskutiere JavaFX Chioceboxen verküpfen im AWT, Swing, JavaFX & SWT Bereich.
N

N0Name

Hi,
ich bin gerade dabei meine erste App in zu programmieren, komm aber nicht weiter. Die App soll Einheiten umrechnen also z.B. Meter in Kilometer und so. Sie soll so funktionieren, das ich in der einen Choicebox auswähle ob es eine Länge oder ein Gewicht ist, und dann in den nächsten zwei Choiceboxen spezifiziere um welche Einheiten es sich handelt. Mein Problem ist, das ich nicht weiß wie ich die Choiceboxen mit einander verbinden kann, so das ich eine Art Filter bekomme. Wenn ich inder ersten ChoiceBox z.B. länge auswähle, soll ich in der zweiten und drittenChoicebox nur noch meter und Kilometer und so auswählen können.

Ich weiß mein Code ist wahrscheinlich zu lang und so aber ich hoffe man kann mir trotzdem helfen.

Java:
public class Main extends Application {

    @Override
    public void start(Stage window) throws Exception {

        //Labels
        Label title = new Label("Converter");
        title.setFont(new Font("Cambria", 28));

        Label choice1Label = new Label("Please enter a value");

        Label scene1choice1 = new Label("Please enter your first value:");
        Label scene1choice2 = new Label("Please enter your second value:");

        // Buttons
        Button btnHome = new Button("Next");


        //ChoiceBoxen
        ChoiceBox homeValue = new ChoiceBox();
        homeValue.setItems(FXCollections.observableArrayList("length", "weigth", "area", "volume"));
        ChoiceBox value1 = new ChoiceBox();





        HBox titleBox = new HBox(title);
        titleBox.setAlignment(Pos.TOP_CENTER);
        titleBox.setPadding(new Insets(30));
        titleBox.setSpacing(40);

        HBox fstChoiceLabel = new HBox(choice1Label);
        fstChoiceLabel.setAlignment(Pos.CENTER);
        fstChoiceLabel.setPadding(new Insets(75));
        fstChoiceLabel.setSpacing(70);

        HBox frstchoice = new HBox(homeValue);
        frstchoice.setAlignment(Pos.CENTER);
        frstchoice.setPadding(new Insets(40));
        frstchoice.setSpacing(70);

        HBox fstBtn_Home = new HBox(btnHome);
        fstBtn_Home.setAlignment(Pos.BOTTOM_CENTER);
        fstBtn_Home.setPadding(new Insets(40));
        fstBtn_Home.setSpacing(20);

        VBox homeScreen = new VBox(fstChoiceLabel, frstchoice);

        HBox scene1Label1 = new HBox(scene1choice1);
        scene1Label1.setAlignment(Pos.CENTER);
        scene1Label1.setPadding(new Insets(10));
        scene1Label1.setSpacing(20);

        HBox scene1Choice1 = new HBox(value1);
        scene1Choice1.setAlignment(Pos.CENTER);
        scene1Choice1.setPadding(new Insets(10));
        scene1Choice1.setSpacing(20);


        HBox scene1Label2 = new HBox(value1);
        scene1Label2.setAlignment(Pos.CENTER);
        scene1Label2.setPadding(new Insets(10));
        scene1Label2.setSpacing(20);

        HBox scene1Choice2 = new HBox();
        scene1Choice2.setAlignment(Pos.CENTER);
        scene1Choice2.setPadding(new Insets(10));
        scene1Choice2.setSpacing(20);

        VBox scene1Label = new VBox(scene1Label1, scene1choice1, scene1Label2, scene1choice2);


        //Scene
        BorderPane pane = new BorderPane();
        pane.setTop(titleBox);
        pane.setCenter(homeScreen);
        pane.setBottom(fstBtn_Home);

        BorderPane pane1 = new BorderPane();
        pane1.setCenter(scene1Label);

        BorderPane pane2 = new BorderPane();

        Scene scene = new Scene(pane, 300, 500);
        Scene scene1 = new Scene(pane1, 300, 500);
        Scene scene2 = new Scene(pane2, 300, 500);

        btnHome.setOnAction(e -> window.setScene(scene1));


        //Fenster erstellen
        window.setTitle("UMRECHNER");
        window.setScene(scene);
        window.show();

    }
 
Thema: 

JavaFX Chioceboxen verküpfen

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben