图像构造函数未显示在主类中

问题描述 投票:0回答:1

我对 JavaFX 非常陌生,所以这可能有一个明显的答案,抱歉。但我已经开始尝试面向对象编程,并尝试创建一个精灵类,该类允许用户在构造函数中添加图像文件。希望这能让将图像添加到主启动方法中变得更容易,但是,无论我做什么,我的图像根本没有显示。

主课

import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.shape.Rectangle;
import javafx.scene.layout.Pane;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.Group;


public class Main extends Application
{
@Override
public void start(Stage primaryStage) {
Sprite sprite = new Sprite("https://art.pixilart.com/36ba3b65e7e9f5d.png");
Pane pane = new Pane();
pane.getChildren().add(sprite);


Scene scene = new Scene(pane, 300, 200);
primaryStage.setTitle("A Simple Scene!");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}

精灵类

import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.Group;
import javafx.scene.layout.Pane;


public class Sprite extends Group {




public Sprite(String file) {

Image img = new Image("https://art.pixilart.com/36ba3b65e7e9f5d.png"+file, 0, 80, true, false);
ImageView character= new ImageView();
character.setImage(img);
this.getChildren().add(character);
}

}

我查找了不同的教程并尝试根据该教程编辑代码,但它仍然不显示图像。不过,它显示其他一切都很好。

如有任何帮助,我们将不胜感激,提前谢谢您!

oop javafx
1个回答
0
投票

改变:

Image img = new Image("https://art.pixilart.com/36ba3b65e7e9f5d.png"+file...

Image img = new Image(file....

因为您已经在“字符串文件”中传递了 URL。

© www.soinside.com 2019 - 2024. All rights reserved.