[英]Set a background image for a HBox - JavaFX
我无法为 Hbox 设置背景图像。 我试过这个:
HBoxName.setStyle("-fx-background-image: images/background.png");
在 initialize 方法中,然后我还尝试在 Scene Builder 中添加 CSS 样式: -fx-background-image
和url("images/background.png")
。 我该怎么做?
有几种方法可以为您的 HBox 设置背景图像,
1. 使用 CSS
使用setStyle
方法
使用setStyle()
方法直接设置背景图片,
HBoxName.setStyle("-fx-background-image: url('images/background.png');" + "-fx-background-repeat: stretch;" + "-fx-background-size: 1000 700;" + "-fx-background-position: center center;");
使用外部CSS
文件
您应该创建一个外部 CSS 文件将其加载到您的场景中(或者您也可以将 CSS 文件加载到任何控件),
scene.getStylesheets().add( this.getClass().getClassLoader().getResource("style.css").toString() );
在style.css
文件中添加这些样式,
#HBoxName{ -fx-background-image: url("images/background.png"); -fx-background-repeat: stretch; -fx-background-size: 1000 700; -fx-background-position: center center; }
参考
2. 使用setBackground()
设置BackgroundImage
您也可以以编程方式设置背景图像。
BackgroundSize backgroundSize = new BackgroundSize(900,
700,
true,
true,
true,
false);
BackgroundImage image = new BackgroundImage(new Image("image/background.png"),
BackgroundRepeat.NO_REPEAT,
BackgroundRepeat.NO_REPEAT,
BackgroundPosition.CENTER,
backgroundSize);
HBoxName.setBackground(new Background(image));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.