将 TextFlow 中的文本居中对齐 - JavaFX FXML & CSS



目前,我的FXML中有一段文本用文本定义。它也位于ScrollPane内的TextFlow中。我已经尝试将文本对齐以在 FXML 本身和 css 中居中,但仍然无法正常工作。这是FXML

<ScrollPane fx:id = "scrollPane">
     <content>
         <TextFlow styleClass="txtFlow">
               <children>
                    <Text styleClass="h1" text="Title" textAlignment="CENTER"/>
                    <Text styleClass="h2" text="&#10;Subtitle"/>
              </children>
          </TextFlow>
    </content>
</ScrollPane>

这是 CSS

.h1{
-fx-font-family: "Helvetica";
-fx-font-size: 50px;
-fx-fill: #147cb0;
-fx-underline: true;
-fx-alignment: center; }

要在 TextFlow 中使用对齐文本

<TextFlow textAlignment="CENTER"> .... </TextFlow>

对齐滚动窗格的内容,请使用

<ScrollPane fx:id = "scrollPane" fitToWidth="true"> .... </ScrollPane>

除了@Uluk的答案之外,您还可以使用 css 通过使用TextFlow上的样式来实现这一点。

<TextFlow style="-fx-text-alignment: center;">

您还可以通过使用css文件和其中的styleclass来获得所需的效果。

<TextFlow styleClass="txtFlow">

在 CSS 文件上为 ,

.txtFlow {
    -fx-text-alignment: center;
}

最新更新