Table des matières

Le Tutoriel de JavaFX ComboBox

View more Tutorials:

1- JavaFX ComboBox

ComboBox est un composant de l'interface populaire. Il permet aux utilisateurs de choisir un des options. Lorsque les utilisateurs cliquent sur ComboBox, une liste d'options apparaît pour les utilisateurs à sélectionner.
Vous pouvez créer ComboBox à partir d'une liste des valeurs:
 
ObservableList<Planet> list = PlanetDAO.getPlanetList();

comboBox.setItems(list);
Vous pouvez également ajouter des éléments à un ComboBox disponibles.
 
Planet uranus = new Planet("URA", "Uranus");
Planet neptune = new Planet("NEP", "Neptune");
comboBox.getItems().addAll(uranus,neptune);

2- Exemple ComboBox

ComboBoxDemo.java
package org.o7planning.javafx.combobox;

import org.o7planning.javafx.model.Planet;
import org.o7planning.javafx.model.PlanetDAO;

import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.ComboBox;
import javafx.scene.control.Label;
import javafx.scene.layout.FlowPane;
import javafx.stage.Stage;

public class ComboBoxDemo extends Application {

    @Override
    public void start(Stage stage) {
        

        ComboBox<Planet> comboBox = new ComboBox<Planet>();

        ObservableList<Planet> list = PlanetDAO.getPlanetList();

        comboBox.setItems(list);
        comboBox.getSelectionModel().select(1);

        FlowPane root = new FlowPane();
        root.setPadding(new Insets(5));
        root.setHgap(5);
        
        root.getChildren().add(new Label("Select Planet:"));
        root.getChildren().add(comboBox);

        stage.setTitle("ComboxBox (o7planning.org)");
        Scene scene = new Scene(root, 350, 300);
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        Application.launch(args);
    }

}
Planet.java
package org.o7planning.javafx.model;

public class Planet {

    public String code;
    private String name;

    public Planet() {

    }

    public Planet(String code, String name) {
        this.code = code;
        this.name = name;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
   
    @Override
    public String toString()  {
        return this.name;
    }

}
PlanetDAO.java
package org.o7planning.javafx.model;

import javafx.collections.FXCollections;
import javafx.collections.ObservableList;

public class PlanetDAO {

    public static ObservableList<Planet> getPlanetList() {
        Planet mercury = new Planet("MER", "Mercury");
        Planet venus = new Planet("VEN", "Venus");
        Planet earth = new Planet("EAR", "Earth");

        ObservableList<Planet> list //
                = FXCollections.observableArrayList(mercury, venus, earth);

        return list;
    }
   
}

View more Tutorials: