能够将图标添加到jar文件

时间:2014-01-18 18:34:15

标签: java javafx

我一直在四处寻找如何更改可执行jar文件的默认Java“咖啡杯”图标,以及实现它的方法,我发现,是:

getFrame().setIconImage(Toolkit.getDefaultToolkit().getImage(getClass()
.getClassLoader().getResource("MyProject/resources/myIcon.png")));

this.getFrame().setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getClassLoader().getResource("plagialyzer/resources/PlagiaLyzerIcon.png")));

我无法弄清楚如何将其添加到我的 JavaFx类中。任何人都可以请指出如何将其添加到例如下面的课程中:

public class WakiliProject extends Application {

    private double xOffset = 0;
    private double yOffset = 0;

    @Override
    public void start(final Stage primaryStage) {

        ScreensController mainContainer = new ScreensController();

        Group root = new Group();

        root.setOnMousePressed(new EventHandler<MouseEvent>() {
            @Override
            public void handle(MouseEvent event) {
                xOffset = event.getSceneX();
                yOffset = event.getSceneY();
            }
        });

        root.setOnMouseDragged(new EventHandler<MouseEvent>() {
            @Override
            public void handle(MouseEvent event) {
                primaryStage.setX(event.getScreenX() - xOffset);
                primaryStage.setY(event.getScreenY() - yOffset);
            }
        });

        root.getChildren().addAll(mainContainer);
        Scene scene = new Scene(root, 900, 624);
        primaryStage.setScene(scene);

        primaryStage.initStyle(StageStyle.UNDECORATED);
        primaryStage.initStyle(StageStyle.TRANSPARENT);
        primaryStage.getIcons().add(new Image("/MediaTools/antibanner.png"));
        primaryStage.setTitle("Wakili");

        primaryStage.show();
    }
    public static void main(String[] args) {
        launch(args);
    }
}

1 个答案:

答案 0 :(得分:0)

如果您想更改文件的图标,可以尝试本教程http://code.makery.ch/java/javafx-8-tutorial-part7/

如果你有&gt; = 7u10正在运行,你也可以尝试这个(它相当短):添加一个<fx:icon >元素,就像解释here一样。

<fx:deploy ...> 
     <fx:info> 
         <fx:icon href="default.png"/> 
     </fx:info> 
     ... 
</fx:deploy>

如果您运行的是7u9或更低版本,您可以按照这篇文章回答以实现目标:including an icon into a self-contained JavaFX application (.exe)