zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【Java AWT 图形界面编程】设置窗口图标 ( IntelliJ IDEA 的图标资源位置 | 代码实现 | exe4j 设置导出 exe 程序对应的图标资源位置 )

2023-06-13 09:18:07 时间

文章目录

一、IntelliJ IDEA 的图标资源位置


将图标资源 icon.png 放置在工程根目录 ;

在 AWT 界面程序中 , 使用如下代码加载图片资源 , 并调用 Frame#setIconImage 函数 , 将图片设置成 Frame 窗口的图标 ;

        Frame frame = new Frame("AWT 图形界面编程");
        Image image = Toolkit.getDefaultToolkit().getImage("icon.png");
        frame.setIconImage(image);

完整代码如下 :

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class HelloAWT {
    public static void main(String[] args) {
        Frame frame = new Frame("AWT 图形界面编程");

        Image image = Toolkit.getDefaultToolkit().getImage("icon.png");
        frame.setIconImage(image);

        // 创建非模式对话框
        Dialog dialog = new Dialog(frame, "对话框", false);
        dialog.setLayout(null);
        // 设置对话框位置及大小
        dialog.setBounds(100, 100, 300, 331);

        // 设置 5 个布局, 分别在 4 个角和 中心位置显示

        // 绘制左上角布局
        Panel panel1 = new Panel();
        panel1.setBackground(Color.BLUE);
        panel1.setBounds(0, 31, 100, 100);
        dialog.add(panel1);

        // 绘制右上角布局
        Panel panel2 = new Panel();
        panel2.setBackground(Color.RED);
        panel2.setBounds(200, 31, 100, 100);
        dialog.add(panel2);

        // 绘制左下角布局
        Panel panel3 = new Panel();
        panel3.setBackground(Color.BLACK);
        panel3.setBounds(0, 231, 100, 100);
        dialog.add(panel3);

        // 绘制右下角布局
        Panel panel4 = new Panel();
        panel4.setBackground(Color.GREEN);
        panel4.setBounds(200, 231, 100, 100);
        dialog.add(panel4);

        // 绘制中间布局
        Panel panel5 = new Panel();
        panel5.setBackground(Color.MAGENTA);
        panel5.setBounds(100, 131, 100, 100);
        dialog.add(panel5);


        // 设置打开对话框按钮
        Button button = new Button("打开对话框");
        frame.add(button);

        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                dialog.setVisible(true);
            }
        });

        frame.pack();
        frame.setVisible(true);
    }
}

执行结果 : 执行该程序后 , 界面窗口图标 , 与 Dialog 对话框图标 , 都显示自己设置的自定义图标 ;

二、exe4j 设置导出 exe 程序对应的图标资源位置


使用 exe4j 工具将 上述 程序导出成 exe 程序 ;

参考 【IntelliJ IDEA】导出可执行 JAR 包 博客 , 将 Java 代码编译成 可执行 jar 包 ;

参考 【IntelliJ IDEA】使用 exe4j 生成 jre + jar 可执行文件并在 Windows 上执行 ( 不安装 jre 执行 java 程序 ) 博客 , 将 jar 包打包成可执行的 exe 文件 ;

将 icon.png 图片 , 拷贝到 生成的 可执行 exe 文件的相同目录 , 该目录对应着 工程的 根目录 ;

拷贝到此处后 , 可执行 jar 文件中 , 调用

        Image image = Toolkit.getDefaultToolkit().getImage("icon.png");
        frame.setIconImage(image);

代码 , 可以获取到该图片文件 , 并将其设置为可执行程序的 窗口图标 ;