UI

image.png
image.png

基本应用

  • 选择时间
  • 设置时间
  • 获取已选择的时间 ```java import java.time.LocalDate; import java.util.Locale; import javafx.application.Application; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.DatePicker; import javafx.scene.input.MouseEvent; import javafx.scene.layout.VBox; import javafx.stage.Stage; import javafx.util.StringConverter;

public class Test extends Application {

  1. private final DatePicker mDatePicker = new DatePicker();
  2. public static void main(String[] args) {
  3. Locale.setDefault(Locale.US);
  4. launch(args);
  5. }
  6. @Override
  7. public void start(Stage stage) {
  8. stage.setTitle("DatePickerSample ");
  9. initUI(stage);
  10. stage.show();
  11. }
  12. private void initUI(Stage stage) {
  13. final StringConverter<LocalDate> converter = new StringConverter<LocalDate>() {
  14. @Override
  15. public String toString(LocalDate date) {
  16. if (date != null) {
  17. return date.toString();
  18. } else {
  19. return "";
  20. }
  21. }
  22. @Override
  23. public LocalDate fromString(String string) {
  24. if (string != null && !string.isEmpty()) {
  25. return LocalDate.parse(string);
  26. } else {
  27. return null;
  28. }
  29. }
  30. };
  31. mDatePicker.setConverter(converter);
  32. mDatePicker.setValue(LocalDate.now());//设置时间选择器的时间为当前时间
  33. mDatePicker.requestFocus();
  34. Button getTimeBtn = new Button("获取已选择的时间");
  35. getTimeBtn.setOnMouseClicked(new EventHandler<MouseEvent>() {
  36. @Override
  37. public void handle(MouseEvent event) {
  38. System.out.println(mDatePicker.getValue());
  39. }
  40. });
  41. VBox vbox = new VBox(20);
  42. vbox.setStyle("-fx-padding: 10;");
  43. vbox.getChildren().addAll(mDatePicker,getTimeBtn);
  44. Scene scene = new Scene(vbox, 300, 200);
  45. stage.setScene(scene);
  46. }

} ```

其他案例

https://docs.oracle.com/javase/8/javafx/user-interface-tutorial/date-picker.htm#:~:text=JavaFX%20DatePicker%20is%20a%20control%20that%20enables%20selection,chooser.%20Working%20with%20Time%20Data%20and%20Date%20Formats