java - 当 Jar 通过 Windows 10 链接启动时 setIconImage 不起作用
问题描述
怎么了?为什么当 Jar 通过 Windows 10 链接启动时,Windows 10 任务栏上会显示错误的图像图标(常规 Java 图标,而不是我放入 Jar 中的那个)?
我有一个罐子,它试图将其图像图标设置为...
this.setIconImage(icon);
当程序使用命令行启动时,它工作正常...
java -jar C:\Games\RealWar.jar
然后(或当 Eclipse 运行程序时),Jar 内部的正确图标会显示在 Windows 10 任务栏上,
但是正确的图标不会显示在任务栏上,当 Jar 由 Windows 10 链接启动时,该链接包含一个目标字符串,如...
"C:\Program Files\Java\jdk1.8.0_152\bin\java.exe" -jar C:\Games\Java\RealWar.jar
在这两种情况下,程序窗口的左上角都会显示正确的图像图标,但是当使用 Windows 10 链接启动程序时,任务栏上的图标是常规的 Java 图标,而不是命令行,而不是罐子里的那个。
我想我还想指出,当 Jar 通过 Windows 10 链接启动时,Jar 仍在查找其 ImageIcon。我知道这一点,因为我在程序中设置了一个测试...
System.out.println("Icon is null.");
...如果它找不到它的图标。但我知道它找到它的图标就好了,因为它说另一个......
System.out.println("Icon is not null.");
...反而
我还尝试将 Windows 10 链接中的目标字符串缩短为...
java -jar "C:\Games\Java\RealWar.jar"
...但它不起作用。Windows 10 坚持将“java”更改为...
"C:\Program Files\Java\jdk1.8.0_152\bin\java.exe"
... 或者...
C:\ProgramData\Oracle\Java\javapath\java.exe
并且这些都不会导致 Windows 10 在 Windows 10 任务栏上显示正确的图像图标。
那么有什么问题呢?为什么当 Jar 通过 Windows 10 链接启动时,Windows 10 任务栏上会显示错误的图像图标(常规 Java 图标,而不是我放入 Jar 中的那个)?
所以图像图标是“不为空”的。Jar 中的程序找到了它的图像图标。它在程序窗口的左上角张贴了它的图像图标。
但是当程序通过 Windows 10 链接而不是命令行启动时,任务栏上只会显示常规的 Java 图标,而不是正确的图像图标。
解决方案
推荐阅读
- python - ValueError: Columns must be the same length as key ---- 为什么会这样?
- r - 通过根据两个定性因素组合相似的行来减少数据框
- ajax - 当您更改价格时,Laravel Ajax 购物车会动态更改小计
- vmware - 无法在 Cloud Foundry 中创建共享域 - 504 网关超时
- snowflake-cloud-data-platform - 插入 TABLE($TABLE_VARIABLE) 雪花
- c - 为什么我的strcmp的值不等于0或者无效?
- android - 带有 Material Outline Box 的 boxStroke 不起作用
- r - R:在特定字符串之后提取数字
- twilio - Twilio 函数检索语音邮件类型错误:不推荐使用参数“auth”。改用“用户名”/“密码”
- r - 如何在一个几何而不是另一个上绘制网格