文章目录
- 一、IntelliJ IDEA 的图标资源位置
- 二、exe4j 设置导出 exe 程序对应的图标资源位置
一、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);
代码 , 可以获取到该图片文件 , 并将其设置为可执行程序的 窗口图标 ;