规则“-fx-text-alignment”不起作用?
The rule "-fx-text-alignment" doesn't work?
我正在使用 JavaFX 创建一个简单的用户界面,其中使用了一些显示文本的标签。我尝试使用以下规则将文本移动到标签的中心:
-fx-text-alignment: center
但它不起作用,默认情况下文本仍位于左侧。我还检查过我没有使用任何其他可以覆盖它的规则。有任何想法吗?
这是 css 代码:
#subtitle
{
-fx-font: bold italic 18pt "Arial";
-fx-text-alignment: center;
-fx-effect: dropshadow( one-pass-box, black, 8, 0.0, 2, 0 );
-fx-text-fill: #1ebd1e;
}
Java代码:
Label title = new Label("Trees");
title.setId("subtitle");
grid.add(title, 0, 0, 2, 1);
您可以使用以下代码解决此问题:
Label title = new Label("Trees");
title.setId("subtitle");
GridPane.setHalignment(title, HPos.CENTER);
gridpane.add(title, 0, 0, 2, 1);
这是我得到的结果:
注:
-fx-text-alignment
标签将使文本在标签边框内居中。如果标签的宽度恰好适合文本所需的大小,则无需更改对齐方式,但如果设置的宽度大于文本所需的宽度,则可以将文本对齐到标签的边框内。
我也遇到了同样的问题
标签中的文本不能居中或右对齐,或者...
既不在 CSS 中,也不在 mylabel.setTextAlignment(TextAlignment.Center)
之类的代码中,当标签大于文本时。
我改用mylabel.setAlignment(Pos.CENTER)
来解决问题;
也适用于 CSS 和 -fx-alignment:center;
我正在使用 JavaFX 创建一个简单的用户界面,其中使用了一些显示文本的标签。我尝试使用以下规则将文本移动到标签的中心:
-fx-text-alignment: center
但它不起作用,默认情况下文本仍位于左侧。我还检查过我没有使用任何其他可以覆盖它的规则。有任何想法吗? 这是 css 代码:
#subtitle
{
-fx-font: bold italic 18pt "Arial";
-fx-text-alignment: center;
-fx-effect: dropshadow( one-pass-box, black, 8, 0.0, 2, 0 );
-fx-text-fill: #1ebd1e;
}
Java代码:
Label title = new Label("Trees");
title.setId("subtitle");
grid.add(title, 0, 0, 2, 1);
您可以使用以下代码解决此问题:
Label title = new Label("Trees");
title.setId("subtitle");
GridPane.setHalignment(title, HPos.CENTER);
gridpane.add(title, 0, 0, 2, 1);
这是我得到的结果:
注:
-fx-text-alignment
标签将使文本在标签边框内居中。如果标签的宽度恰好适合文本所需的大小,则无需更改对齐方式,但如果设置的宽度大于文本所需的宽度,则可以将文本对齐到标签的边框内。
我也遇到了同样的问题
标签中的文本不能居中或右对齐,或者...
既不在 CSS 中,也不在 mylabel.setTextAlignment(TextAlignment.Center)
之类的代码中,当标签大于文本时。
我改用mylabel.setAlignment(Pos.CENTER)
来解决问题;
也适用于 CSS 和 -fx-alignment:center;