2

我想使用 TextField 相应地从 JavaFX 调整 Rectangle 形状的大小,该 TextField 使用 Anchors 在窗口调整大小时自动调整大小。

我也尝试向矩形添加锚点,但它不会根据我从 SceneBuilder 设置的宽度调整大小。

这么短的故事:当我的 TextField 因为我的 Window 调整大小而调整大小时,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 回答