Как я могу изменить шрифт Time4J CalendarPicker в JavaFX?

Есть ли способ изменить шрифт Time4J CalenderPicker в стиле css?

Мне нужен персидский DatePicker в моей программе, поэтому я использовал Time4J CalenderPicker.

используя этот код, я мог изменить только шрифт ячеек:

CalendarPicker<PersianCalendar> MyDatePicker = CalendarPicker.persianWithSystemDefaults(); 

MyDatePicker.setCellCustomizer(
            (cell, column, row, model, date) -> {
                cell.setStyle("-fx-font-family: MyFont;");
            }
    );

Вы можете увидеть изменения в этом изображении

Я попробовал этот код, но ничего не изменилось:

MyDatePicker.setStyle("-fx-font-family: MyFont;");

Но я хочу изменить шрифт отверстия CalendarPicker.

введите описание изображения здесь

введите описание изображения здесь

2 ответа

Решение

Чтобы применить изменения, необходимо использовать следующий код и установить новые стили CSS для средства выбора календаря и применения настроек.

private CalendarPicker<PersianCalendar> MyDatePicker = CalendarPicker.persianWithSystemDefaults();
MyDatePicker.getStylesheets().add("/MyCSS-Style.css");

Следующий gif демонстрирует мои настройки.

Сам инструмент выбора календаря представляет собой только комбинацию текстового редактора и всплывающей кнопки (входит в состав HBox). Однако представление календаря - это еще один компонент, который появляется, если пользователь нажимает кнопку. И этот компонент, шрифт которого вы хотите изменить, еще не доступен для общественности (за исключением ячеек через специальный настройщик).

Я согласен, что это должно быть более гибким. Поэтому я открыл новый выпуск для отслеживания этого запроса на улучшение.

Не стесняйтесь, разветвите Time4J, проведите эксперименты и отправьте запрос на размещение на time4j-github. На самом деле, я занят другими делами, но потом могу посмотреть глубже.

Другие вопросы по тегам