我在DatePicker中选择日期后弹出窗口关闭。 我想用一个按钮手动关闭它。 我可以阻止日期选择时关闭弹出窗口吗?
答案 0 :(得分:0)
花了一些时间玩弄,但我已经成功地做到了你需要的。按钮点击时只会 CLOSE ,但点击日历按钮时会打开。
我EventHandler
时DatePicker
添加了hidden
。
VBox root = new VBox();
Button button = new Button("Click");
DatePicker datePicker = new DatePicker();
boolean[] buttonClicked = {false};
button.setOnAction(event->{
if(datePicker.isShowing()) {
buttonClicked[0] = true;
datePicker.hide();
buttonClicked[0] = false;
}
});
datePicker.setOnHidden(event -> {
if(!buttonClicked[0]){
datePicker.show();
}
});
root.getChildren().addAll(button, datePicker);
Scene scene = new Scene(root,800,800); ////100,100 is width and height of window
//scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
primaryStage.setScene(scene);
primaryStage.show();