javafxを用いて文字列を中央揃えで表示したいです。
label.setLayoutX(...); label.setLayoutY(...);
としているのですが、これだと文字の長さによってX座標の真ん中からずれてしまいます。他に何か良い設定の方法はありませんか?
もしくは、文字列を変更するごとにX座標を設定するという方法を取った方が良いのでしょうか?
import javafx.application.Application; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.layout.VBox; import javafx.scene.layout.Pane; import javafx.scene.Scene; import javafx.stage.Stage; public class Test extends Application { private Label label; @Override public void start(Stage stage) throws Exception { this.label = new Label("Hello World"); label.setLayoutX(270); label.setLayoutY(200); Button button = new Button(""); button.setPrefSize(80,20); Pane pane = new Pane(); pane.setPrefWidth(600); pane.setPrefHeight(400); pane.getChildren().setAll(label); VBox vbox = new VBox(); vbox.getChildren().addAll(pane, button); button.setOnAction(event -> { label.setText("Test"); }); stage.setScene(new Scene(vbox)); stage.show(); } }
回答2件
あなたの回答
tips
プレビュー