使用JFrame的setIconImages()方法的图标大小是多少?

时间:2013-03-06 12:42:20

标签: java icons size jframe frame

有没有人知道哪些图标大小与jFrame的setIconImages()(PLURAL)方法一起使用,以便我的应用程序图标在所有平台和所有上下文中都能很好地显示(例如,窗口图标,任务栏图标,alt-tab图标等等)?

我找到了一个使用16px-by-16px和32px-by-32px图像的示例,但是我需要更大一些吗?

为了测试,我还尝试将64px和128px版本添加到传递给setIconImages()的List中,但这些版本似乎没有在我的Windows 7机器上使用。但是,我无法在其他机器上轻松测试,所以我想知道是否有人知道我应该包括哪些尺寸?

1 个答案:

答案 0 :(得分:34)

根据API,运行时从提供的列表中选择最合适的大小。我会提供16x1632x3264x64128x128,让JVM在运行时决定。

  

public void setIconImages ( List <? extends Image > icons)

     

设置要显示的图像序列作为此窗口的图标。对getIconImages的后续调用将始终返回icons列表的副本。

     

根据平台功能,一个或多个不同尺寸的图像将用作窗口的图标。

     

从头开始扫描icons列表以查找最合适尺寸的图像。如果列表包含几个相同大小的图像,则将使用第一个图像。

     

没有指定图标的无主窗口使用platfrom-default图标。除非明确覆盖,否则可以从所有者继承拥有窗口的图标。将图标设置为null或空列表可恢复默认行为。

     

注意:本机窗口系统可以使用不同尺寸的不同图像来表示窗口,具体取决于上下文(例如窗口装饰,窗口列表,任务栏等)。他们也可以只为所有上下文使用单个图像,或者根本不使用任何图像。

     

<强>参数:

     

icons - 要显示的图标图像列表。

     

<强>时间:

     

1.6

     

另见:

     

getIconImages()setIconImage(Image)