Ausgewähltes Element aus einer ChoiceBox in JavaFX abrufen

Sheeraz Gul 12 Oktober 2023
Ausgewähltes Element aus einer ChoiceBox in JavaFX abrufen

ChoiceBox ist ein Teil der JavaFX-Bibliothek, aus der wir eine Auswahl treffen können. Dieses Tutorial zeigt, wie man ein ausgewähltes Element aus einer ChoiceBox in JavaFX erhält.

Ausgewähltes Element aus einer ChoiceBox in JavaFX erhalten

ChoiceBox enthält einen Satz von Elementen, aus denen ein Benutzer eine Auswahl treffen kann, die das aktuell ausgewählte Element sein wird. Die Standardauswahl in einer Auswahlbox ist ein null-Eintrag.

Die folgenden Methoden werden verwendet, um mit der ChoiceBox zu arbeiten.

Methode Beschreibung
hide() Diese Methode schließt die Auswahlliste.
setItems(ObservableList value) Dies legt den Wert der Eigenschaftselemente fest.
setValue(T value) Dadurch wird der Wert des Eigenschaftswerts festgelegt.
getItems() Dadurch wird der Wert der Eigenschaftselemente abgerufen.
getValue() Dies erhält den Wert des Eigenschaftswerts.
show() Dies öffnet die Auswahlliste.

Wir verwenden die folgende Methode, um das ausgewählte Element aus einer Auswahlbox zu erhalten.

ChoiceBox.getSelectionModel().selectedIndexProperty()

Lassen Sie uns mit JavaFX ein ausgewähltes Element aus einer ChoiceBox abrufen.

package delftstack;

import javafx.application.Application;
import javafx.beans.value.*;
import javafx.collections.*;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
public class Choice_Box extends Application {
  public void start(Stage Choice_Box_Stage) {
    // title for the stage
    Choice_Box_Stage.setTitle("ChoiceBox");

    // button to show
    Button Show_Button = new Button("Show Choice");

    // tile pane
    TilePane Title_Pane = new TilePane();

    // labels
    Label Label1 = new Label("This is a choice box, Please select your choice");
    Label Label2 = new Label("No Choice selected");

    // Choices array
    String Choice_Array[] = {
        "Delftstack 1", "Delftstack 2", "Delftstack 3", "Delftstack 4", "Delftstack 5"};

    // choiceBox
    ChoiceBox DemoChoiceBox = new ChoiceBox(FXCollections.observableArrayList(Choice_Array));

    // adding a listener
    DemoChoiceBox.getSelectionModel().selectedIndexProperty().addListener(
        new ChangeListener<Number>() {
          // if items of the list are changed
          public void changed(ObservableValue ov, Number value, Number new_value) {
            // text for the label to the selected item
            Label2.setText(Choice_Array[new_value.intValue()] + " is Selected");
          }
        });

    // ChoiceBox
    Title_Pane.getChildren().add(Label1);
    Title_Pane.getChildren().add(DemoChoiceBox);
    Title_Pane.getChildren().add(Label2);

    Scene sc = new Scene(Title_Pane, 400, 200);

    // Setting the scene
    Choice_Box_Stage.setScene(sc);

    Choice_Box_Stage.show();
  }

  public static void main(String args[]) {
    // launching the application
    launch(args);
  }
}

Der obige Code zeigt das Abrufen eines ausgewählten Elements aus einer ChoiceBox mit JavaFX. Siehe Ausgabe:

Holen Sie sich das ausgewählte Element aus einer ChoiceBox

Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - Java JavaFX