JavaFX ImageView图像不显示
问题描述:
我有一个assets
文件夹,里面装满了要在我创建的游戏中实现的图像,我希望在窗口中显示这些图像。这是我的代码到目前为止。JavaFX ImageView图像不显示
public class javafxtest extends Application {
public void start(Stage primaryStage) throws Exception {
Group root = new Group();
Scene scene = new Scene(root, 600, 600);
Image test = new Image("file:assets/BA.png");
ImageView piece = new ImageView(test);
piece.setX(10);
piece.setY(10);
Rectangle rct = new Rectangle(50, 150, 500, 300);
rct.setFill(Color.GRAY);
root.getChildren().addAll(rct, piece);
primaryStage.setScene(scene);
primaryStage.show();
}
}
这将是一个程序运行IntelliJ /从一个罐子。资产文件夹与此文件位于同一目录中。我没有得到任何文件路径错误,所以我认为它可以找到图像,但它并没有出现在屏幕上,矩形也没有。公平的警告,我从头开始学习JavaFX,我发现没有太多解释事情是如何工作的,所以这可能是一个愚蠢的问题。
如果图像被入瓶中,你应该通过'getResource'访问:'新的图像(的getClass()的getResource( “/资产/ BA.png”)toExternalForm()。 )' – f*
只需要在intellij中,所以上面的结果为空指针异常对我来说 – 420fedoras
您需要将您的图像添加到您的项目并使用'getRessource()',或者您需要编写图像的完整路径。 –