gpt4 book ai didi

Java Jframe 导出时未打开

转载 作者:行者123 更新时间:2023-12-01 13:55:52 26 4
gpt4 key购买 nike

我试图在 Runnable Jar 中显示一些图像,当我在 eclipse 中运行它时,它工作正常,但是当我导出它时,它只是不加载,文件在 jar 中,但它只是不会运行,我一直在试图找出原因,我最初以为是图像,但我将其从项目中完全删除了,它仍然无法运行,我认为它与资源加载有关,但老实说我没有任何线索,这是我的代码。

public class Main {

public static void main(String[] args) throws ClassNotFoundException,
InstantiationException, IllegalAccessException {

try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (UnsupportedLookAndFeelException ex) {
}

final JFrame frame = new JFrame("Window");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.pack();
final JFrame frame1 = new JFrame("Window2");
frame.setLocation(600, 300);
frame.setSize(140, 125);
Dimension minSize = new Dimension(800, 600);
Dimension maxSize = new Dimension(800, 600);
frame.setMinimumSize(minSize);
frame.setMinimumSize(maxSize);
frame.setResizable(false);
frame.setSize(784, 561);
frame.getContentPane().setLayout(null);

JLabel label = new JLabel("");
label.setIcon(new ImageIcon(Main.class
.getResource("/res/BlueSpace.jpg")));
label.setBounds(0, 0, 794, 493);
frame.getContentPane().add(label);

JButton btnNewButton = new JButton("Install Modpack");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
System.out
.println("Developer - The Modpack has began Installation!");

frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame1.pack();
frame1.setLocation(600, 300);
frame1.setSize(140, 125);
Dimension minSize = new Dimension(800, 600);
Dimension maxSize = new Dimension(800, 600);
frame1.setMinimumSize(minSize);
frame1.setMinimumSize(maxSize);
frame1.setResizable(false);
frame1.setSize(784, 561);
frame1.getContentPane().setLayout(null);

JLabel label = new JLabel("");
label.setIcon(new ImageIcon(Main.class
.getResource("/res/BlueSpace.jpg")));
label.setBounds(0, 0, 794, 493);
frame1.getContentPane().add(label);

JProgressBar progressBar = new JProgressBar();
progressBar.setBounds(10, 504, 774, 14);
frame1.getContentPane().add(progressBar);
progressBar.setValue(25);

JLabel lblInstallingModpack = new JLabel(
"Installing Modpack...");
lblInstallingModpack.setToolTipText("Modpack Is Installing!");
lblInstallingModpack
.setHorizontalAlignment(SwingConstants.CENTER);
lblInstallingModpack.setBounds(300, 529, 150, 14);
frame1.getContentPane().add(lblInstallingModpack);
frame1.setVisible(true);
JOptionPane.showMessageDialog(frame1,
"I'm 25% done on the Modpack!", "Not Done Yet...",
JOptionPane.WARNING_MESSAGE);

frame.setVisible(false);
}
});
btnNewButton.setEnabled(false);
btnNewButton.setBounds(531, 504, 253, 56);
frame.getContentPane().add(btnNewButton);
frame.setVisible(true);
btnNewButton.setEnabled(true);

JLabel lblWelcomeToThe = new JLabel("Welcome to the Realism Modpack");
lblWelcomeToThe.setBounds(10, 504, 511, 14);
frame.getContentPane().add(lblWelcomeToThe);

JLabel lblNewLabel = new JLabel(
"All Mods owned by there respecive owners");
lblNewLabel.setBounds(10, 546, 511, 14);
frame.getContentPane().add(lblNewLabel);

JButton btnFinish = new JButton("Creators");
btnFinish.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(frame,
"Ribenja - ModPack Author", "A List of Great People",
JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame, "Dave - The 'Enthusiast'",
"A List of Great People", JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame, "Carl - Ate his hands",
"A List of Great People", JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame,
"Surf dude - This message was simple",
"A List of Great People", JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame,
"ThatGuy2000 - A true Hero", "A List of Great People",
JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame, "*** - An NSA operative",
"A List of Great People", JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame,
"Steve - A true Minecrafter", "A List of Great People",
JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame, "Downloader - you",
"A List of Great People", JOptionPane.OK_OPTION);
JOptionPane.showMessageDialog(frame,
"I KNOW WHAT YOU DID - A true story teller",
"A List of Great People", JOptionPane.OK_OPTION);

}

});
btnFinish.setEnabled(true);
btnFinish.setBounds(268, 504, 253, 56);
frame.getContentPane().add(btnFinish);
}
}

最佳答案

我怀疑您的 JAR 文件没有打包资源文件,在您的情况下 - 图像文件。确保您的 JAR 有一个“res”目录,并且在其中包含您的框架所需的所有图像。

关于Java Jframe 导出时未打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19632690/

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