JavaFX inline CSS: нажата - PullRequest
0 голосов
/ 12 марта 2020

Вот пример того, как мне удалось изменить: нажатие на динамическое c изображение.

CSS

.toggle-button_playerlist {
  -fx-graphic: base-button-playerlist-pressed;
  -fx-focus-color: transparent;
  -fx-faint-focus-color: transparent;
  -fx-effect: null;
}

Java Код

String CSS_BUILDER = "-fx-focus-color: transparent;" +
                "-fx-faint-focus-color: transparent;" +
                "-fx-effect: transparent;";
URL url = new URL(Path to image);
CSS_BUILDER = CSS_BUILDER + "base-button-playerlist-pressed: url('" + url.toURI()"');";
NODEBUTTON.setStyle(CSS_BUILDER);

Чувствовал, что поделюсь, потому что это заняло у меня целую вечность. Причина, по которой я строю CSS в строку, в том случае, если я хотел добавить дополнительные свойства на лету в зависимости от определенных условий. Цель состояла в том, чтобы игроки могли настроить приложение по своему усмотрению.

Помните, что при использовании встроенных свойств нельзя использовать подчеркивание "_", base-button-playerlist_pressed не будет работать, пока base-button-playerlist -pressed делает.

Это решение, а не вопрос!

...