将“PNG”图像文件加载到Java Fx应用程序时,Java fx引擎失败

时间:2012-11-23 02:01:57

标签: java javafx-2 javafx

我是Java Fx中的真正初学者,并且在将我在网络上找到的两个png文件加载到我的应用中时遇到问题。有人可以告诉我可能有什么问题吗?在我正在使用的代码下面:

    Button fButton = new Button("Agregar selección");

    Image imageF = new Image(getClass().getResourceAsStream("forwardArrow.png"))
    fButton.setGraphic(new ImageView(imageF));

由于某种原因,Java Fx图形引擎失败了。

非常感谢任何提示。

在错误之下:

    Exception in Application start method
    java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at       

1 个答案:

答案 0 :(得分:1)

也许您导入了错误的Image类? 以下是一个工作示例。

package com.test;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class JavaFXApp extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        Button fButton = new Button();
        Image imageF = new Image(getClass().getResourceAsStream("forwardArrow.png"));
        fButton.setGraphic(new ImageView(imageF));
        StackPane root = new StackPane();
        root.getChildren().add(fButton);
        primaryStage.setScene(new Scene(root, 300, 250));
        primaryStage.show();
    }
}