我做了一个UI stage。我在舞台上放了一台BorderPane。现在,我想向layout添加一个bacgGround镜像
我想使用CSS,但它不起作用
public void start(Stage primaryStage) throws Exception {
carStage = new Stage();
BorderPane layout = new BorderPane();
carScene = new Scene(layout);
carStage.setTitle("רכב");
GridPane center = new GridPane();
enterFieldsToCenter(center);
right(layout);
layout.setCenter(center);
layout.setStyle("style.css");
carStage.setScene(carScene);
layout.getCenter().setStyle("-fx-background-image: url(\"C:\\Users\\itayz\\eclipse-workspace\\Itay'sCar\\src\\CrystalClear.jpg\");"
+ "-fx-background-size: 500, 500;"
+ "-fx-background-repeat: no-repeat;");
sizeOfStage();
carStage.show();
}背景来自:https://uigradients.com/#CrystalClear如何轻松导入?
注意:文件存在于path中
发布于 2019-03-19 03:28:35
问题是您的URI没有模式。
从到docs
url ( [\"\']? <address> [\"\']? )
<address>可以是绝对URI,例如:
url(http://example.com)url('http://example.com')url("http://example.com")或者它可以相对于CSS文件的位置。
因此,您必须在方案中使用绝对URL:
layout.getCenter().setStyle("-fx-background-image: url(\"file:///C:/Users/itayz/eclipse-workspace/Itay'sCar/src/CrystalClear.jpg\");"
+ "-fx-background-size: 500, 500;"
+ "-fx-background-repeat: no-repeat;");除此之外,我建议使用相对URL并将图像放在您的项目资源中。
发布于 2019-03-19 15:16:15
这个模式对我很有效:
-fx-background-image: url('file:C:/Data/example.jpg');因此,在您的情况下,它将是:
layout.getCenter().setStyle("-fx-background-image: url('file:C:/Users/itayz/eclipse-workspace/Itay'sCar/src/CrystalClear.jpg');"
+ "-fx-background-size: 500, 500;"
+ "-fx-background-repeat: no-repeat;");https://stackoverflow.com/questions/55226050
复制相似问题