此问题在此处已有答案:
How do I determine the correct path for FXML files, CSS files, Images, and other resources needed by my JavaFX Application?(1个答案)
1小时前关闭。
我对JavaFX还是个新手,但我最近发现了样式表,并发现可以使用它来设置应用程序的设计。我想看看是否可以将应用程序的背景更改为图像。这是我当前的项目设置:16copia.jpg
是我想设置的背景。
这是我的style.css设置。
.root{
-fx-font-family: 'JetBrains Mono';
-fx-font-size: 10px;
-fx-background-image: url("16copia.jpg");
-fx-background-repeat: no-repeat;
-fx-background-size: stretch;
}
.button{
-fx-base:lightblue;
}
.label {
-fx-text-fill: lightblue;
}
在我的主类中,我将样式表添加到了我的主场景中。还尝试使用root.setStyle,但没有效果。
public void start(Stage stage){
stage.setTitle("Calculator App");
genMenuBar();
setFunctionality();
Scene mainScene = new Scene(root, 300, 500);
root.setBottom(calcView);
root.setCenter(displayView);
mainScene.getStylesheets().add("style.css");
stage.setScene(mainScene);
stage.show();
//root.setStyle("-fx-background-image: url('src/main/java/calculator/app/16copia.jpg');");
}
当我运行程序时,应用了除图像之外的所有CSS样式。
这并不意味着最终的外观,主要只是对样式表进行试验:
程序运行时没有错误,但是bug仍然存在。如果可能的话,我更愿意坚持CSS样式。
1条答案
按热度按时间pes8fvy91#
将图片移到resources文件夹中,并将路径字符串替换为文件名,似乎已经解决了这个问题。谢谢@jewelsea!
以下是修改内容,供参考。
已将
16copia.jpg
移至资源文件夹: