Set background image the same size as the window/screen in Java app(将背景图像设置为与 Java 应用程序中的窗口/屏幕相同的大小)
问题描述
我想设置一个与我的窗口/屏幕大小相同的背景图像.
I would like to set a background image the same size as my window/screen.
我希望更喜欢在我的 CSS
文件中执行此操作,但我有 NOT FOUND 一种方法完成这个.
I would prefer to do this in my CSS
file, but I have NOT FOUND a way to accomplish this.
我必须在 javafx 类文件中执行此操作吗?
Must I do this in a javafx class file?
感谢您的每一个帮助;)
Thanks for every help ;)
推荐答案
您必须确定 java 代码中的屏幕尺寸,如 JavaFX 窗口大小,没有办法在 CSS 中确定.
You will have to determine the screen size in java code as demonstrated in JavaFX window sizing, there is no way to determine it in CSS.
对于一个图像,在你的 java 代码中你可以使用一些东西作为
For an Image, in your java code you can use something as
ImageView imageView = new ImageView(image);
imageView.setFitWidth(Screen.getPrimary().getVisualBounds().getWidth());
imageView.setFitHeight(Screen.getPrimary().getVisualBounds().getHeight());
如果要将背景图像设置为场景,则:
If you want to set the background image to a scene then:
import javafx.application.Application;
import javafx.geometry.Rectangle2D;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.stage.*;
public class ScreenSizeImage extends Application {
@Override public void start(final Stage stage) {
// uncomment if you want the stage full screen.
//stage.setFullScreen(true);
Screen screen = Screen.getPrimary();
Rectangle2D bounds = screen.getVisualBounds();
stage.setX(bounds.getMinX());
stage.setY(bounds.getMinY());
stage.setWidth(bounds.getWidth());
stage.setHeight(bounds.getHeight());
StackPane root = new StackPane();
root.setStyle(
"-fx-background-image: url(" +
"'http://icons.iconarchive.com/icons/iconka/meow/256/cat-box-icon.png'" +
"); " +
"-fx-background-size: cover;"
);
stage.setScene(new Scene(root));
stage.show();
}
public static void main(String[] args) { launch(args); }
}
当然,最好不要使用内联的 setStyle 调用,而是使用单独的 CSS 样式表,如下所示:
Of course, rather than the inline setStyle call you are best off using a separate CSS stylesheet like below:
.root{
-fx-background-image: url("background_image.jpg");
-fx-background-size: cover;
}
这篇关于将背景图像设置为与 Java 应用程序中的窗口/屏幕相同的大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:将背景图像设置为与 Java 应用程序中的窗口/屏幕


基础教程推荐
- 多个组件的复杂布局 2022-01-01
- Java Swing计时器未清除 2022-01-01
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
- 从 python 访问 JVM 2022-01-01
- 验证是否调用了所有 getter 方法 2022-01-01
- 大摇大摆的枚举 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- 在 Java 中创建日期的正确方法是什么? 2022-01-01