📜  带有图标的 jframe (1)

📅  最后修改于: 2023-12-03 15:39:24.725000             🧑  作者: Mango

带有图标的 JFrame

在 Java 中,我们可以使用 JFrame 实现一个带有窗口图标的应用程序窗口。在本文中,我们将学习如何创建一个带有图标的 JFrame。

1. 创建 JFrame 对象

要创建一个 JFrame 对象,我们需要在程序中导入 javax.swing.JFrame 包,并实例化 JFrame 类。

下面是一个简单的例子:

import javax.swing.JFrame;

public class MyFrame extends JFrame {
    public static void main(String[] args) {
        JFrame frame = new JFrame("My Frame");
        frame.setVisible(true);
    }
}

在上面的代码中,我们创建了一个名为 MyFrame 的 JFrame 对象,并将其设置为可见。但是,这个窗口没有图标。

2. 添加图标

我们可以使用 setIconImage() 方法在应用程序窗口中添加图标。

下面是一个带有图标的 JFrame 的例子:

import javax.swing.ImageIcon;
import javax.swing.JFrame;

public class MyFrame extends JFrame {
    public static void main(String[] args) {
        JFrame frame = new JFrame("My Frame");
        ImageIcon icon = new ImageIcon("icon.png");
        frame.setIconImage(icon.getImage());
        frame.setVisible(true);
    }
}

在上面的代码中,我们使用 ImageIcon 类加载图标,并将其设置为 JFrame 对象的图标。现在,我们的 JFrame 有了一个图标。

3. 将图标打包到 Jar 文件中

如果我们将应用程序打包成 Jar 文件,则需要将图标文件打包到 Jar 文件中。要将图标文件打包到 Jar 文件中,我们需要在打包命令中将图标文件添加到类路径中。

例如,如果我们有一个名为 icon.png 的图标文件,我们可以使用以下命令创建 Jar 文件:

jar cvfm MyApp.jar MANIFEST.MF MyFrame.class icon.png

在上面的命令中,我们使用 jar 命令创建了一个名为 MyApp.jar 的 Jar 文件,并将 MyFrame.classicon.png 文件添加到 Jar 文件中。

4. 加载 Jar 文件中的图标

为了从 Jar 文件中加载图标,我们可以使用以下代码:

import javax.swing.ImageIcon;
import javax.swing.JFrame;

public class MyFrame extends JFrame {
    public static void main(String[] args) {
        JFrame frame = new JFrame("My Frame");
        ImageIcon icon = new ImageIcon(MyFrame.class.getResource("icon.png"));
        frame.setIconImage(icon.getImage());
        frame.setVisible(true);
    }
}

在上面的代码中,我们使用 getResource() 方法加载 Jar 文件中的 icon.png 图标文件,并将其设置为 JFrame 对象的图标。现在,无论我们如何分发应用程序,我们的 JFrame 都将具有相同的图标。