在我的JFrame中,我有默认的咖啡图标。我想删除它。但是当我执行setIconImage(null)时它不起作用。任何人都可以告诉我如何完全删除图标的解决方案
答案 0 :(得分:22)
保留Java source code的副本总是好的。 java.awt.Window(JFrame的超类)的代码具有setIconImage
的以下代码:
public void setIconImage(Image image)
{
ArrayList<Image> imageList = new ArrayList<Image>();
if (image != null)
{
imageList.add(image);
}
setIconImages(imageList);
}
您可以看到传入空图像与无所事事相同,因此您必须传入图像才能摆脱咖啡杯。正如其他人建议使用1 x 1透明图标是最好的选择。以下是创建图标的一些代码:
Image icon = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB_PRE);
myFrame.setIconImage(icon);
答案 1 :(得分:4)
创建由一个像素组成的图标(更好的透明度)并使用它。如果您需要这样的图标请与我联系。我会寄给你的。
答案 2 :(得分:1)
您可以将图像图标设置为透明图像,以取出咖啡杯。我不相信有可能摆脱默认图标。
答案 3 :(得分:0)
您可以使用gimp或photoshop甚至绘制并创建1x1px透明图像,将其导出(.png或.jpg,无所谓?)。 然后应用它:
ImageIcon frameIcon = new ImageIcon("files\yourfile.png");
frame.setIconImage(frameIcon.getImage());
应该没事。