1
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-icon。有人可以检测到问题吗?“craft.png”是 20x20 像素。它正确放置在 ressource 文件夹中(没有 ClassLoader 异常,也没有其他编译时错误)。

4

1 回答 1

1

ImageIcon(String)需要文件引用,如果图标是嵌入式资源,则需要提供URL

就像是...

private static ImageIcon ICON = new ImageIcon(RType.class.getResource("/craft.png"));

假设它craft.png在默认目录而不是某个子目录中

于 2013-11-01T01:58:41.320 回答