Как показать только всплывающее окно календаря JavaFX DatePicker и отсутствие ComboBox в FXML?
Я хочу удалить поле со списком DatePicker и вместо этого отображать только календарь DatePicker.
Объясняется здесь: JavaFX извлекает всплывающее окно календаря из DatePicker / показывает только всплывающее окно
Если я хочу сделать это в Java, я бы сделал что-то вроде:
DatePickerSkin skin = new DatePickerSkin(new DatePicker());
Node calendarControl = skin.getPopupContent();
Но как я могу сделать это в FXML? (Я использую SceneBuilder)
<DatePicker id="datePicker" prefHeight="25.0" prefWidth="535.0" showWeekNumbers="true">
<HBox.margin>
<Insets left="10.0" right="10.0" top="10.0" />
</HBox.margin>
</DatePicker>
?
1 ответ
Решение
Вы можете попробовать это так:
<DatePicker id="datePicker" prefHeight="25.0" prefWidth="535.0" showWeekNumbers="true" stylesheets="@yourCSS.css">
<HBox.margin>
<Insets left="10.0" right="10.0" top="10.0" />
</HBox.margin>
</DatePicker>
А также yourCSS.css
(в том же каталоге, вероятно):
.date-picker-popup .month-year-pane {
visibility: hidden;
}
Я попытался сделать это с помощью встроенных стилей CSS со стилем атрибутов на DatePicker
элемент, но я не получил его на работу.
РЕДАКТИРОВАТЬ:
Получил неправильный вопрос. Я уверен, что вы не можете отобразить всплывающее окно без выпадающего списка Datepicker
только с FXML.