package datepickersample; import com.sun.javafx.runtime.VersionInfo; import java.time.chrono.Chronology; import java.util.Locale; import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.NodeOrientation; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.ComboBox; import javafx.scene.control.DatePicker; import javafx.scene.control.Label; import javafx.scene.layout.HBox; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class DatePickerSample extends Application { static { Locale.setDefault(Locale.ENGLISH); } Button switchLocale; ComboBox chronologies; public static void main(String[] args) { launch(args); } private DatePicker datePicker; private Button nodeOrientation; @Override public void start(Stage stage) throws Exception { stage.setTitle(VersionInfo.getRuntimeVersion()); stage.setScene(createScene()); stage.show(); } private Scene createScene() { switchLocale = new Button("Switch locale"); switchLocale.setOnAction(new EventHandler() { @Override public void handle(ActionEvent event) { if (Locale.getDefault() == Locale.ENGLISH) { Locale.setDefault(Locale.FRANCE); } else { Locale.setDefault(Locale.ENGLISH); } System.out.println("locale = " + Locale.getDefault()); } }); chronologies = new ComboBox(); chronologies.getItems().addAll( Chronology.of("ISO"), Chronology.of("Minguo"), Chronology.of("ThaiBuddhist"), Chronology.of("Japanese"), Chronology.of("Hijrah-umalqura")); chronologies.valueProperty().addListener(new ChangeListener() { @Override public void changed(ObservableValue observable, Chronology oldValue, Chronology newValue) { datePicker.setChronology(newValue); } }); nodeOrientation = new Button("Change node orientation"); nodeOrientation.setOnAction(new EventHandler() { @Override public void handle(ActionEvent event) { if (datePicker.getNodeOrientation() == NodeOrientation.LEFT_TO_RIGHT || datePicker.getNodeOrientation() == NodeOrientation.INHERIT) { datePicker.setNodeOrientation(NodeOrientation.RIGHT_TO_LEFT); } else { datePicker.setNodeOrientation(NodeOrientation.LEFT_TO_RIGHT); } } }); datePicker = new DatePicker(); return new Scene(new HBox(5, datePicker, new VBox(3, new Label("Test"), new Button("Button"), switchLocale, chronologies, nodeOrientation)), 300, 200); } }