如何在 FXML 中使用预定义的 Spinner 样式 类
How to use predefined Spinner style classes in FXML
根据 this Link javaFX 8u45 微调器,可以通过样式 class 以多种方式设置样式。我确实知道如何通过代码来完成。
例如:
spinner.getStyleClass().add(Spinner.STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL);
或者,
spinner.getStyleClass().add("split-arrows-horizontal");
但是,不是通过 fxml。我确实尝试过这个,但是没有用。我是通过 scenebuilder 版本 8 完成的。
<Spinner fx:id="spn" editable="true" styleClass="split-arrows-horizontal"/>
我不确定为什么,但在 FXML 中定义 styleClass
就像
<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>
按预期工作。
根据 this Link javaFX 8u45 微调器,可以通过样式 class 以多种方式设置样式。我确实知道如何通过代码来完成。
例如:
spinner.getStyleClass().add(Spinner.STYLE_CLASS_SPLIT_ARROWS_HORIZONTAL);
或者,
spinner.getStyleClass().add("split-arrows-horizontal");
但是,不是通过 fxml。我确实尝试过这个,但是没有用。我是通过 scenebuilder 版本 8 完成的。
<Spinner fx:id="spn" editable="true" styleClass="split-arrows-horizontal"/>
我不确定为什么,但在 FXML 中定义 styleClass
就像
<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>
按预期工作。