Java 11 中带有自定义图标的 JFrame

问题描述

我正在尝试获取带有自定义图标的 JFrame,但没有任何效果。这是我现在在 Java 11 中所拥有的:

import javax.swing.JFrame;

public class GUI1 extends JFrame {
    public static void main (String args[]) {
        GUI1 gui = new GUI1();
        gui.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);
        gui.setSize(700,500);
        gui.setVisible(true);
        gui.setTitle("GUI");
    }
}

解决方法

一个例子。

public class GUI extends JFrame{
    // The icon file is in the same directory as this file.
    protected static final ImageIcon ICON = new ImageIcon("Icon.png");

    public static void main(String[] args){
        new GUI();
    }

    public GUI(){
        setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        setPreferredSize(new Dimension(640,480));
        setTitle("GUI");
        setIconImage(ICON.getImage());
        pack();
        setVisible(true);
    }
}