Как использовать предопределенные классы стиля Spinner в FXML
В соответствии с этим блесна Link javaFX 8u45 может быть стилизована различными способами через класс стилей. Я знаю, как сделать это с помощью кода.
Например:
spinner.getStyleClass().add(Spinner.STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL);
или же,
spinner.getStyleClass().add("split-arrows-horizontal");
Однако не по fxml. Я попробовал это, но это не сработало. Я сделал это через сценограф, версия 8.
<Spinner fx:id="spn" editable="true" styleClass="split-arrows-horizontal"/>
1 ответ
Решение
Я не уверен почему но определяю styleClass
в FXML вроде
<Spinner fx:id="spn" styleClass="split-arrows-horizontal"/>
не приведет к добавлению этого стиля в список styleClass. Вы можете проверить это по
@FXML private Spinner spn;
@Override
public void initialize( URL url, ResourceBundle rb )
{
System.out.println( "getStyleClass: " + spn.getStyleClass() );
}
Однако, определяя его в FXML как
<Spinner fx:id="spn">
<styleClass>
<String fx:value="split-arrows-horizontal" />
</styleClass>
</Spinner>
работает как положено.