相关代码
package whowantstobeamillionairetriviagame;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.layout.Background;
import javafx.scene.layout.BackgroundImage;
import javafx.scene.layout.BackgroundPosition;
import javafx.scene.layout.BackgroundRepeat;
import javafx.scene.layout.BackgroundSize;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class WhoWantsToBeAMillionaireTriviaGame extends Application
{
@Override
public void start(Stage startingStage) throws Exception
{
Image backgroundColor = new Image("http://www.sonomare.com/darkblue_background_rot_180.jpg");
BackgroundSize backgroundSize = new BackgroundSize(100, 100, true, true, true, false);
BackgroundImage backgroundImage = new BackgroundImage(backgroundColor, BackgroundRepeat.NO_REPEAT, BackgroundRepeat.NO_REPEAT, BackgroundPosition.CENTER, backgroundSize);
StackPane background = new StackPane();
background.setBackground(new Background(backgroundImage));
Scene menuScene = new Scene(background);
startingStage.setScene(menuScene);
startingStage.setFullScreen(true);
startingStage.show();
}
public static void main(String[] args)
{
launch(args);
}
}
我问,因为使用重复将导致图片在x和y轴上重复,因此它可以适合整个屏幕。不使用重复会在其周围留下一堆白色空间。圆形,空间和将舞台设置为全屏也无济于事。我能做什么?
答案 0 :(得分:0)
您可以将背景尺寸设置为封面。
来自文档
可以使用cover = true定义大小,这意味着应该拉伸图像以覆盖Region的整个渲染表面。
BackgroundSize的定义变为
BackgroundSize backgroundSize = new BackgroundSize(100, 100, true, true, true, true);