在增加或减少窗框时,如何将背景图像设置为窗口大小?现在图像的设置大小为300,300,因此当增加窗口时,大小保持不变。 这是我的代码片段:
grid.getChildren().addAll(nameLabel, nameInput, passLabel, passInput,
loginButton);
grid.setMinSize(300,300);
grid.setMaxSize(300,300);
StackPane root = new StackPane(grid);
NumberBinding maxScale = Bindings.min(root.widthProperty().divide(300),
root.heightProperty().divide(300));
grid.scaleXProperty().bind(maxScale);
grid.scaleYProperty().bind(maxScale);
BackgroundImage myBI= new BackgroundImage(new Image("image.jpg", 300, 300,
false, true),
BackgroundRepeat.REPEAT, BackgroundRepeat.NO_REPEAT,
BackgroundPosition.DEFAULT, BackgroundSize.DEFAULT);
//then you set to your node
grid.setBackground(new Background(myBI));
Scene scene = new Scene(root, 300,300);
window.setScene(scene);
window.show();
答案 0 :(得分:0)
您可以尝试根据documentation实例化BackgroundSize对象,并将覆盖值设置为true。然后使用您创建的BackGroundSize对象而不是BackGroundSize.DEFAULT
。