为了账号安全,请及时绑定邮箱和手机立即绑定

JavaFX:stage.getIcons().add() 在 JavaFX 应用程序中不起作用

JavaFX:stage.getIcons().add() 在 JavaFX 应用程序中不起作用

潇湘沐 2022-05-21 20:15:55
我想为我的 JavaFX 应用程序添加一个程序图标。我知道该怎么做 - 我有一个 Stage 对象定义为主应用程序类中的一个字段:private Stage stage;然后在初始化主要阶段的方法中,我有一段代码:Scene scene = new Scene(rootLayout);primaryStage.setScene(scene);primaryStage.getIcons().add(new Image("file:view/images/programicon.png"));primaryStage.show();我有一个 package com.myapp.view,在这个包中我还有另一个 package: com.myapp.view.images,并且我已经粘贴了我想要使用的图标,名为programicon.png. 之前,我写错了:primaryStage.getIcons().add(new Image("view/images/programicon.png"));我有一个例外:Caused by: java.lang.IllegalArgumentException: Invalid URL or resource not foundat javafx.scene.image.Image.validateUrl(Image.java:1110)但是当我把 url 改成file:view/images/programicon.png- 现在也不例外,但程序图标仍然保持默认。这programicon.png是一张没有背景的 512x512 图像。
查看完整描述

1 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

我找到了解决方案。变化自:

primaryStage.getIcons().add(new Image("file:view/images/programicon.png"));

primaryStage.getIcons().add(new Image(getClass().getResourceAsStream("view/images/programicon.png")));

成功了。


查看完整回答
反对 回复 2022-05-21
  • 1 回答
  • 0 关注
  • 730 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信