У меня небольшая проблема с Swing (или, может быть, netBeans), я делаю тестирование JFrame
, я изменил его фон на изображение с помощью этой строки кода:
this.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("src/testdesign/BG.png")))));
И я добавил JLabel
с Icon
к раме с помощью Netbeans. Результат при компиляции проекта (в среде IDE):
Все в порядке.. Но когда я создаю JAR файл, результат:
Я не профессионал Java, поэтому я думаю, что способ, которым я изменил фон, не является правильным, или, может быть, это другое.
Вы используете неправильный способ загрузки фонового изображения. В вашем местоположении изображения кода зависит от каталога проекта src
. Вы должны загружать изображение из пути к классам, кроме файловой системы. Вы Class.getResource
метод Class.getResource
например:
this.setContentPane(new JLabel(new ImageIcon(getClass().getResource(pathToImage))));