我们可以使用列表来初始化窗口图标Window.setIconImages(List<? extends Image>)
。通常用于的图标大小不同JFrame
?
此代码将64个不同大小的图像(从16x16,以2递增)变成列表的图标。
import java.awt.*;import java.awt.image.BufferedImage;import java.util.ArrayList;import java.util.Vector;import javax.swing.*;import javax.swing.border.EmptyBorder;public class FrameIconList { public static BufferedImage getImage(int size, Color color) { BufferedImage i = new BufferedImage( size, size, BufferedImage.TYPE_INT_RGB); Graphics2D g = i.createGraphics(); g.setColor(color); g.fillRect(0, 0, size, size); g.setColor(Color.BLACK); int off = (size>17 ? 3 : 1); if (off>1) g.drawRect(0, 0, size-1, size-1); g.drawString("" + size, off, size-off); g.dispose(); return i; } public static void main(String[] args) { final Color[] colors = { Color.GREEN, Color.RED, Color.YELLOW, Color.WHITE, Color.CYAN, Color.MAGENTA, Color.PINK, Color.ORANGE }; int s = 64; final int[] sizes = new int[s]; for (int ii=0; ii<sizes.length; ii++) { sizes[ii] = 16+(ii*2); } Runnable r = new Runnable() { } } };
慕丝7291255
相关分类