Создание кнопок в Java с пользовательским шрифтом приводит к тому, что кнопки имеют странную форму - PullRequest
0 голосов
/ 13 ноября 2018

Я пытался создать кнопки javafx с пользовательским шрифтом. Шрифт находится в каталоге ресурсов моего проекта и применяется к кнопкам через таблицу стилей CSS. Проблема в том, что кнопки становятся действительно высокими. Как только я удаляю строку css, которая меняет шрифт, кнопки выглядят как обычно. Сами кнопки находятся внутри HBox, который находится в нижней области BorderPane. У кого-нибудь есть идеи как это исправить? Изменение размера вручную не помогает.

@font-face {
    font-family: 'MODERNA';
    src: url('/fonts/MODERNA_.ttf');
}

.label {
    -fx-font-family: 'MODERNA';
    -fx-font-size: 20;
}

.button .text {
    -fx-font-family: 'MODERNA';
}

.button {
    -fx-background-color: #F5E050;
    -fx-pref-height: 30px;
    -fx-pref-width: 100px;
}

странные, непропорциональные кнопки с пользовательским шрифтом нормально выглядящие кнопки со стандартным шрифтом

1 Ответ

0 голосов
/ 14 ноября 2018

Я нашел решение и хотел, чтобы кто-нибудь с такой же проблемой знал. @ Зефир был недалеко, но именно maxHeight, но minHeight создали проблему. Он должен быть установлен в USE_PREF_SIZE в SceneBuilder вместо USE_COMPUTED_SIZE, который кажется значением по умолчанию. После этого просто измените ваш prefSize в пользовательском интерфейсе SceneBuilder, и все работает отлично. Проблема, возможно, заключалась в том, что система не смогла рассчитать правильную высоту самостоятельно, по какой-либо причине, вероятно, что-то связанное со шрифтом, потому что это не произошло с другими шрифтами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...