我需要更改Jdialog框标题栏图标。默认情况下,它使用java咖啡图像。
我在互联网上搜索并使用了很多代码
1. Image im = Toolkit.getDefaultToolkit().getImage("/org/qmon/generate/Images/JDialog -2.ico");
dialog.setIconImage(im);
2. Toolkit kit = Toolkit.getDefaultToolkit ();
Image img = kit.getImage ("/org/qmon/generate/Images/Create File Tag-16x16.png");
dialog.setIconImage(img);
一切正常..请帮助我..先谢谢
答案 0 :(得分:1)
事实上,ico
不是Java的支持图像格式。
您遇到第二种方法问题的可能原因是getImage
期待文件引用,而您似乎引用的图像看起来就像嵌入(存储在您的应用程序中)
尝试使用更像......
的内容Image img = kit.getImage (getClass().getResource("/org/qmon/generate/Images/Create File Tag-16x16.png"));
相反。
就个人而言,我更喜欢ImageIO.read
,因为它会在出现问题时抛出IOException
...
Image img = ImageIO.read(getClass().getResource("/org/qmon/generate/Images/Create File Tag-16x16.png"));
但那就是我......
您还应该考虑查看Convert List<BufferedImage> to Image,其中演示了使用ico
文件(来自第三方API)和setIconImages
方法
答案 1 :(得分:0)
Image image = ImageIO.read(new URL(
"http://www.gravatar.com/avatar/f1d58f7932b6ae8027c4e1d84f440ffe?s=128&d=identicon&r=PG"));
dialog.setIconImage( image );
dialog.setVisible(true);
答案 2 :(得分:0)
我在我的应用程序中使用它并且工作正常
java.net.URL url = ClassLoader.getSystemResource("res/java.png");
ImageIcon icon = new ImageIcon(url);
JOptionPane.showMessageDialog(null, jep, "UroSync",JOptionPane.INFORMATION_MESSAGE, icon);
答案 3 :(得分:0)
为了改进 MadProgrammer 所说的内容,我遇到了问题,我解决了它实例化JDialog但使用静态类 <dimen name="design_bottom_navigation_text_size" tools:override="true">10sp</dimen>
<dimen name="design_bottom_navigation_active_text_size" tools:override="true">10sp</dimen>
方法Toolkit
。
getDefaultToolkit().getImage(Image img)
为此,您需要在图像之前添加到项目的构建路径中。