Как присвоить атрибуты CSS новым меткам, которые не были полностью определены?

#java #javafx #attributes #grid-layout #gridpane

#java #javafx #атрибуты #grid-layout #gridpane

Вопрос:

У меня есть система, которая создает новую метку в Javafx, которая предопределена, но просто создается на месте при каждом запуске метода. Я хочу иметь возможность редактировать цвет фона создаваемых меток.

 countSendResponses  
mainLayout.add(new Label(messageSend), 0, countSendResponces).Color.rgb(1, 1, 1);
// that gives an error, I have tried the same thing in different places in that line of code. Nothing works
  

Мой текущий код:
countSendResponses
mainLayout.add(новая метка (messageSend), 0, количество отправленных ответов);

Есть ли способ сделать это? Если есть лучший способ сделать то, что я делаю, я открыт для предложений. Я хочу иметь возможность изменять цвет фона метки. Спасибо!

Комментарии:

1. messageSend равно сообщению, которое я хочу отправить. Я не думаю, что для этого нужен какой-либо код, объясняющий это, поскольку это всего лишь строка, помещенная внутри метки. Однако я приведу этот код, если потребуется.

2. Просто сохраните Label в локальной переменной, прежде чем добавлять / изменять ее.

Ответ №1:

Чтобы изменить стиль CSS любого узла в JavaFX, вам нужно использовать Node.setStyle("//Insert CSS Here.");

Например, чтобы изменить цвет фона текста, вы можете использовать:

 Node.setStyle("
   -fx-background-color: red;
");
  

Полное справочное руководство по использованию CSS в JavaFX вы можете найти здесь:

https://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html#typecolor

Помните, что при использовании CSS в JavaFX вам всегда приходится начинать каждый атрибут с -fx- .