public class RType extends JFrame {
private static ImageIcon ICON = new ImageIcon("craft.png");
public RType() {
add(new Board());
setIconImage(ICON.getImage());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 300);
setLocationRelativeTo(null);
setTitle("R - Type");
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new RType();
}
}
在我尝试为 JFrame 设置图标图像后,此代码仍然可以正常工作并编译,但没有任何区别。我仍然看到默认的 java 图标。有人可以检测到问题吗? “craft.png”是 20x20 像素。它正确放置在资源文件夹中(没有类加载器异常,也没有其他编译时错误)。
最佳答案
ImageIcon(String)
需要文件引用,如果图标是嵌入资源,则需要提供 URL
类似...
private static ImageIcon ICON = new ImageIcon(RType.class.getResource("/craft.png"));
假设craft.png
位于默认目录而不是某个子目录
关于java - JFrame.setIconImage() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19719590/