生成 JAR 文件后 JFrame 设计发生变化?图片丢失
JFrame design change after generating JAR file? Image missing
我在使用 Swing(或者可能是 netBeans)时遇到了一点问题,我正在做一个测试 JFrame
,我用这行代码通过图像更改了它的背景:
this.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("src/testdesign/BG.png")))));
并且我使用 netBeans 在框架中添加了 JLabel
和 Icon
。
编译项目时的结果(在IDE)是:
一切都很好..但是当我生成一个JAR文件时,结果是:
我不是 Java 专业人士,所以我认为我更改背景的方式不正确,或者可能是另一回事。
您加载背景图片的方式不正确。在您的代码图像位置取决于项目目录 src
。您应该从类路径但文件系统加载图像。您 Class.getResource
修复它的方法例如:
this.setContentPane(new JLabel(new ImageIcon(getClass().getResource(pathToImage))));
我在使用 Swing(或者可能是 netBeans)时遇到了一点问题,我正在做一个测试 JFrame
,我用这行代码通过图像更改了它的背景:
this.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("src/testdesign/BG.png")))));
并且我使用 netBeans 在框架中添加了 JLabel
和 Icon
。
编译项目时的结果(在IDE)是:
一切都很好..但是当我生成一个JAR文件时,结果是:
我不是 Java 专业人士,所以我认为我更改背景的方式不正确,或者可能是另一回事。
您加载背景图片的方式不正确。在您的代码图像位置取决于项目目录 src
。您应该从类路径但文件系统加载图像。您 Class.getResource
修复它的方法例如:
this.setContentPane(new JLabel(new ImageIcon(getClass().getResource(pathToImage))));