我正在尝试更改每次运行 .jar 程序时出现在任务栏中的默认 java 图标。我设法用 frame.setIconImage(img); 但这使图标太小了,我希望它与其他程序图标一样大并且具有高质量。我有什么办法可以做到吗?谢谢。
问问题
18705 次
2 回答
21
由于您只提供了一个图标,Windows 会将该图标缩放到它需要在任务栏中显示的任何大小(可以是 16x16、32x32 或其他大小,具体取决于桌面和任务栏的大小。
如果你想在任务栏中有一个“好看”的图标,你需要提供一个 32x32 像素版本的图标。
一旦你有了它,你可以调用setIconImages(List)
而不是setIconImage()
定义操作系统可以使用的图标:
List<Image> icons = new ArrayList<Image>();
icons.add(getImage("someImage16x16.gif"));
icons.add(getImage("someImage32x32.gif"));
window.setIconImages(icons);
getImage()
返回正确图像图标的方法在哪里。本质上,这与您已经用于定义当前图标的步骤相同。
您还可以使用此方法提供 64x64 和 24x24 图标(只需将更多图标添加到列表中)。
于 2012-05-14T22:01:12.963 回答
4
试试看这个例子。看起来你需要使用frame.setIconImage(Toolkit.getDefaultToolkit().getImage("your_image.gif"));
line
于 2012-05-14T21:51:17.977 回答