The method DataPicker.setChronology(java.time.chrono.Chronology value) set calendar system for DatePicker. Available Chronology value can be found here: http://docs.oracle.com/javase/8/docs/api/java/time/chrono/AbstractChronology.html.
package javafx_datepicker; import java.time.LocalDate; import java.time.chrono.Chronology; import java.time.chrono.HijrahChronology; import java.time.chrono.IsoChronology; import java.time.chrono.JapaneseChronology; import java.time.chrono.MinguoChronology; import java.time.chrono.ThaiBuddhistChronology; import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.Event; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.DatePicker; import javafx.scene.control.RadioButton; import javafx.scene.control.Toggle; import javafx.scene.control.ToggleGroup; import javafx.scene.layout.StackPane; import javafx.scene.layout.VBox; import javafx.stage.Stage; /** * * @web http://java-buddy.blogspot.com/ */ public class JavaFX_DatePicker extends Application { @Override public void start(Stage primaryStage) { //New DataPicker init at now DatePicker datePicker = new DatePicker(LocalDate.now()); datePicker.setOnAction(new EventHandler() { @Override public void handle(Event event) { LocalDate date = datePicker.getValue(); System.err.println("Selected date: " + date); } }); //reload datePicker at now Button btnNow = new Button("Now"); btnNow.setOnAction(new EventHandler() { @Override public void handle(Event event) { datePicker.setValue(LocalDate.now()); } }); final ToggleGroup groupChronology = new ToggleGroup(); RadioButton optDefault = new RadioButton("default"); optDefault.setToggleGroup(groupChronology); optDefault.setSelected(true); optDefault.setUserData(null); RadioButton optHijrah = new RadioButton("HijrahChronology"); optHijrah.setToggleGroup(groupChronology); optHijrah.setUserData(HijrahChronology.INSTANCE); RadioButton optIso = new RadioButton("IsoChronology"); optIso.setToggleGroup(groupChronology); optIso.setUserData(IsoChronology.INSTANCE); RadioButton optJapanese = new RadioButton("JapaneseChronology"); optJapanese.setToggleGroup(groupChronology); optJapanese.setUserData(JapaneseChronology.INSTANCE); RadioButton optMinguo = new RadioButton("MinguoChronology"); optMinguo.setToggleGroup(groupChronology); optMinguo.setUserData(MinguoChronology.INSTANCE); RadioButton optThaiBuddhist = new RadioButton("ThaiBuddhistChronology"); optThaiBuddhist.setToggleGroup(groupChronology); optThaiBuddhist.setUserData(ThaiBuddhistChronology.INSTANCE); groupChronology.selectedToggleProperty().addListener(new ChangeListener<Toggle>(){ @Override public void changed(ObservableValue<? extends Toggle> observable, Toggle oldValue, Toggle newValue) { if (groupChronology.getSelectedToggle() != null) { datePicker.setChronology( (Chronology)groupChronology.getSelectedToggle().getUserData()); }else{ datePicker.setChronology(null); } } }); VBox vBox = new VBox(); vBox.getChildren().addAll(optDefault, optHijrah, optIso, optJapanese, optMinguo, optThaiBuddhist, btnNow, datePicker); StackPane root = new StackPane(); root.getChildren().add(vBox); Scene scene = new Scene(root, 300, 250); primaryStage.setTitle("java-buddy.blogspot.com"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
No comments:
Post a Comment