Как рисовать изображение в JPanel или JFrame, я уже прочитал учебник оракула по этому вопросу, но я не могу понять, как это правильно. Мне нужно изображение «BeachRoad.png
» для отображения в определенном наборе координат. Вот что я до сих пор.Как рисовать изображение в JPanel или JFrame?
public class Level1 extends JFrame implements ActionListener {
static JLayeredPane EverythingButPlayer;
static Level1 l1;
public Level1() {
EverythingButPlayer = new JLayeredPane();
BufferedImage img = null;
try {
img = ImageIO.read(new File("BeachRoad.png"));
} catch (IOException e) {
}
Graphics g = img.getGraphics();
g.drawImage(img,0, 0, EverythingButPlayer);
this.add(EverythingButPlayer);
}
И в Main(),
l1 = new Level1();
l1.setTitle("poop");
l1.setSize(1920, 1080);
l1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
l1.setVisible(true);
Заранее спасибо!
ваш код прямой путь к бедах или как ненавидеть языков программирования (whatever.getGraphics()) 1. Пожалуйста, читать Oracle учебник [Работа с Imag es] (http://docs.oracle.com/javase/tutorial/2d/images/index.html), поиск здесь, в сообщениях, отмеченных 'paintComponent' или' JLabel' с 'Icon' /' ImageIcon' – mKorbel
Я уже в первой части вопроса было сказано, что я прочитал учебник «Оракула» по работе с изображениями. И я не могу понять первое, что вы сказали .... – Saucymeatman
см. Ответ от @tieTYT, чтобы начать с paintComponent (забыл о paint()) и JPanel, требуется oto override getPreferredSize (забыл о JFrame.setSize()) для JPanel, а затем вызовите JFrame.pack() (поиск здесь, половина вопросов о paiting Image, Shapes, Line) – mKorbel