betacode

Руководство JavaFX ComboBox

View more Tutorials:

Следуйте за нами на нашей фан-странице, чтобы получать уведомления каждый раз, когда появляются новые статьи. Facebook

1- JavaFX ComboBox

ComboBox является компонентом популярного интерфейса. Который позволяет пользователям выбрать один из многих вариантов. Когда пользователь нажимает на ComboBox, выпадает список выборов, чтобы пользователь смог выбрать.
Вы можете создать ComboBox из списка значений:

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

comboBox.setItems(list);
Вы также можете добавить элементы в готовый ComboBox.

Planet uranus = new Planet("URA", "Uranus");
Planet neptune = new Planet("NEP", "Neptune");
comboBox.getItems().addAll(uranus,neptune);

2- Пример 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:

Maybe you are interested

Это онлайн курс вне вебсайта o7planning, который мы представляем, он включает бесплатные курсы или курсы со скидкой.