2

アンカーを使用してウィンドウのサイズ変更時に自動的にサイズ変更する TextField を使用して、それに応じて JavaFX から Rectangle シェイプのサイズを変更したいと考えています。

長方形にもアンカーを追加しようとしましたが、SceneBuilder から設定した幅からサイズ変更されません。

簡単に言えば、ウィンドウのサイズが変更されたために TextField のサイズが変更された場合、Rectangle は TextField と同じ幅にサイズ変更する必要があります。ありがとう

4

1 に答える 1

3

長方形の幅をテキスト フィールドの幅にバインドできます。

myRectangle.widthProperty().bind(myTextField.widthProperty());

例:

public class Demo extends Application {

    @Override
    public void start(Stage stage) {
        Group root = new Group();
        Scene scene = new Scene(root);
        stage.setScene(scene);

        TextField myTextField = new TextField("default");
        Rectangle myRectangle = new Rectangle();
        myRectangle.setHeight(30);
        myRectangle.setFill(Color.AQUA);
        myRectangle.widthProperty().bind(myTextField.widthProperty());

        final VBox hb = new VBox(10);
        hb.setPadding(new Insets(5));
        hb.getChildren().addAll(myTextField, myRectangle);
        scene.setRoot(hb);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
于 2012-06-25T09:51:18.913 に答える