gpt4 book ai didi

java - 运行 jar 文件时不显示图标

转载 作者:行者123 更新时间:2023-11-30 03:49:29 24 4
gpt4 key购买 nike

我是 Java 初学者,我按照教程编写了这个程序(是的,我就是一个初学者),当我在 Eclipse 上运行它时,它运行得非常好。它在我编码的计算机上也运行得很好。但是,如果我将其发送到另一台计算机(仅 .jar 文件)并运行它,它会失败,因为它找不到图标。这是我所拥有的一切。我正在使用的图标与程序的所有类文件一起保存在 bin 文件夹中。出于隐私原因,我用“WORDS”替换了某些行。

我遵循的教程分为两部分:

第 1 部分 - https://buckysroom.org/videos.php?cat=31&video=18027

第 2 部分 - https://buckysroom.org/videos.php?cat=31&video=18028

我的主类(我称它为苹果,因为教程就是这样)。

import javax.swing.JFrame;

public class apples {
public static void main(String[] args) {
Gui go = new Gui();
go.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
go.setSize(1920,1080);
go.setVisible(true);
}
}

现在是我的第二堂课,“Gui”:

import java.awt.FlowLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;

public class Gui extends JFrame {

private JButton custom;

public Gui () {
super("WORDS");
setLayout(new FlowLayout());

Icon b = new ImageIcon(getClass().getResource("b.png"));
custom = new JButton(null, b);
custom.setToolTipText("WORDS");
add(custom);

HandlerClass handler = new HandlerClass();
custom.addActionListener(handler);
}

private class HandlerClass implements ActionListener {
public void actionPerformed(ActionEvent event) {
JOptionPane.showMessageDialog(null, String.format("WORDS", event.getActionCommand()));
JOptionPane.showMessageDialog(null, String.format("WORDS", event.getActionCommand()));
JOptionPane.showMessageDialog(null, String.format("WORDS", event.getActionCommand()));
JOptionPane.showMessageDialog(null, String.format("WORDS", event.getActionCommand()));
}
}
}

非常感谢您的帮助!

最佳答案

值得一读Loading Images Using getResource其中详细解释了它以及从 jar 加载图像。

您可以根据图像位置尝试任何一种。

// Read from same package 
ImageIO.read(getClass().getResourceAsStream("b.png"));

// Read from src/images folder
ImageIO.read(getClass().getResource("/images/b.png"))

// Read from src/images folder
ImageIO.read(getClass().getResourceAsStream("/images/b.png"))

Read more...

关于java - 运行 jar 文件时不显示图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24793129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com