首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除非程序从终端运行,否则不显示JFrame框架图标

除非程序从终端运行,否则不显示JFrame框架图标
EN

Stack Overflow用户
提问于 2014-06-18 15:56:12
回答 1查看 209关注 0票数 1

我终于完成了我的第一个真正的程序,并一直在努力为它做一些最后的润色。这些最后的润色之一是用图标和其他东西来包装它。问题是,该图标仅在我从终端运行jar时显示。例如,当我双击jar运行它时,我只看到了Duke吉祥物。我正在激活相同的jar文件,但方式不同,得到的结果也不同。

示例1(终端)。

请注意图标是如何在我的任务栏中显示的。

示例2(双击)。

请注意图标是如何没有出现在我的任务栏中的。

有没有人知道如何解决这个问题,或者问题是什么?

非常感谢。

编辑1:代码

代码语言:javascript
复制
URL iconURL = getClass().getResource("notebook_builder_icon.gif");
ImageIcon icon = new ImageIcon(iconURL);
frame.setIconImage(icon.getImage());
EN

回答 1

Stack Overflow用户

发布于 2014-06-18 16:11:58

terminaldouble click之间的主要区别是执行位置的上下文。当从terminal运行时,执行上下文将是从中执行java命令的目录。当双击Jar时,上下文将依赖于系统。您可以使用System.out.println(new File(".").getCanonicalPath());输出路径。

在您的terminal中,您的上下文是~/Programming/java,而doublle click将上下文设置为.jar文件的当前文件夹。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24279983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档