Java 在windows swt应用程序中创建安装程序时,帧图像未更改

Java 在windows swt应用程序中创建安装程序时,帧图像未更改,java,swing,install4j,Java,Swing,Install4j,我正在创建一个windows桌面swt应用程序 我需要更改帧图标,因为我使用了 frame.setIconImage((new ImageIcon("C:\\Documents and Settings\\arjuns\\Desktop\\logo1 copy.png")).getImage()); 当我从eclipse手动运行代码时,图标会显示出来,但当我使用Install4j创建安装程序时,图标不会出现 谁能帮帮我吗 import java.awt.*; import javax.sw

我正在创建一个windows桌面swt应用程序

我需要更改帧图标,因为我使用了

frame.setIconImage((new ImageIcon("C:\\Documents and Settings\\arjuns\\Desktop\\logo1 copy.png")).getImage());
当我从eclipse手动运行代码时,图标会显示出来,但当我使用Install4j创建安装程序时,图标不会出现

谁能帮帮我吗

 import java.awt.*;
 import javax.swing.*;
  class set extends  JFrame
 {
set()
{
    setSize(100,100);
    setVisible(true);
    setIconImage(new ImageIcon("navbit-home.png").getImage());
}

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


请设置适当的路径。例如C:/Documents and Settings/arjuns/Desktop/logo1copy.png

您创建的JAR文件中应该有图像。然后使用
getResource()
从jar文件获取图像。 比如说,

URL resource = this.getClass().getResource("resources/logo.png");
frame.setIconImage(new ImageIcon(resource).getImage());
这里logo.png位于执行此代码的类文件的“resources”文件夹下

URL url = ClassLoader.getSystemResource("ressources/logo.png");
Toolkit kit = Toolkit.getDefaultToolkit();
Image img = kit.createImage(url);
setIconImage(img);
这与前面的答案类似,但我需要补充一些信息

您仍然可以使用指向图像的直接路径(C:/User/logo.png)但是假设您将程序交给其他人,他不会将图像放在该特定路径中

因此,我收到您在项目中插入的通知,如下所示:

(我通常会为任何资源提供价格优惠套餐)


因此,它将成为resources/logo.png,对任何打开项目的人都有效。

我已经设置了一个合适的路径。当我直接从eclipse运行代码时,将显示该图像。但它在创建安装程序时不显示。有没有办法在包装中设置图像。?不提供桌面路径。复制当前目录中的图像并设置