我的程序中有一组5张图像。该程序将编译为单个.JAR
文件,因此需要从中读取它们。但是,当我拨打电话时
images = new ArrayPP<ImageIcon>(
new ImageIcon(getClass().getResource("/bha/resources/Portal Test Chamber 17 - Part 1.png")),
new ImageIcon(getClass().getResource("/bha/resources/Portal Test Chamber 17 - Part 2.png")),
new ImageIcon(getClass().getResource("/bha/resources/Portal Test Chamber 17 - Part 3.png")),
new ImageIcon(getClass().getResource("/bha/resources/revit logo - glass.png")),
new ImageIcon(getClass().getResource("/bha/resources/The All-Knowing Octopus.png")));
适用于JMenuItem
中的图标(例如,jMenuItem.setIcon(new javax.swing.ImageIcon(getClass().getResource("/bha/resources/icon.png")));
将始终有效)以及在IDE中进行测试时,但在编译为{{1时}时返回为null
文件。
答案 0 :(得分:1)
鉴于getResource返回一个URL,我猜它不喜欢这个空格。作为测试,我会尝试做
new ImageIcon(getClass().getResource(URLEncoder.encode("/bha/resources/Portal Test Chamber 17 - Part 1.png", "UTF-8"))),