4

テキストを示すいくつかのラベルが使用されている 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);

ここに画像の説明を入力

4

2 に答える 2

4

以下のコードを使用して、この問題を解決できます。

Label title = new Label("Trees");
title.setId("subtitle");
GridPane.setHalignment(title, HPos.CENTER);
gridpane.add(title, 0, 0, 2, 1);

これは私が得た結果です:

ここに画像の説明を入力

注: この-fx-text-alignmentタグは、テキストをラベルの境界線の中央に配置します。ラベルの幅がテキストに合わせて必要なサイズである場合、配置について変更はありませんが、テキストのニーズよりも大きい幅を設定すると、テキストをラベルの境界内に配置できます。

于 2015-05-19T13:42:16.183 に答える