#java #swing
Вопрос:
У меня возникла проблема, я практиковался в программировании на Java программа, которая отображает графический интерфейс java с некоторым текстом и изображением Проблема в том, что изображения не отображаются, и я не могу понять, почему Вот код:
import java.awt.*;
import javax.swing.*;
public class DON extends JFrame {
private JPanel panel;
public DON() {
//Impostazioni finestra
JFrame finestra = new JFrame("Title of page");
finestra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
finestra.setLayout(null);
finestra.getContentPane().setBackground(Color.black);
finestra.setResizable(false);
finestra.setVisible(true);
finestra.setSize(1280, 720);
//Impostazioni pannello
JPanel pannello = new JPanel();
pannello.setBounds(450, 0, 200 , 30);
pannello.setBackground(Color.black);
JPanel startPanel = new JPanel();
startPanel.setBounds(0, 0, 1280 , 30);
startPanel.setBackground(Color.blue);
//Jpanel for images
JPanel imagePanel = new JPanel();
imagePanel.setBounds(0, 30, 1280, 720);
//Impostazioni label e ImageIcon
JLabel label = new JLabel("Image on JLabel!");
label.setBackground(Color.black);
label.setForeground(Color.white);
JLabel imageLabel = new JLabel( "test", new ImageIcon( "2.png" ), JLabel.LEFT );
/* put every jlabel to jpanel and put my jpanel to a container ; */
startPanel.add(imageLabel);
imagePanel.add(imageLabel);
pannello.add(imagePanel);
pannello.add(label);
Container con = finestra.getContentPane();
con.add(pannello);
con.add(imagePanel);
con.add(startPanel);
}
public static void main(String args[]) {
new DON();
}
}
Вы не могли бы мне помочь?
Комментарии:
1. проверьте путь к вашему изображению
2. Я поместил свое изображение в ту же папку java-файла, я написал его плохо?
Ответ №1:
Это связано с проблемой с расположением вашего файла изображения.
Чтобы исправить это,я предлагаю этот метод.
new ImageIcon(this.getClass().getResource("2.png"))
Обязательно очистите сборку, а затем восстановите ее перед запуском.
Или вы можете использовать путь, начинающийся с папки src
new ImageIcon("src/..../2.png") //put your correct path
Редактировать:
Вы должны поместить finestra.setVisible(true);
в последнюю строку конструктора DON()
, иначе вы получите черный экран (как вы уже упоминали в удаленном ответе).