изображение на изображении
Если вы хотите отобразить одно изображение поверх фонового изображения, вам нужно добавить изображение переднего плана к фоновому изображению.
Таким образом, базовая логика будет выглядеть примерно так:
JLabel foreground = new JLabel( new ImageIcon(...) );
JLabel background = new JLabel( new ImageIcon(...) );
background.setLayout( new BorderLayout() );
background.add( foreground );
window.add( background );
Обратите внимание, что нет необходимости использовать панели только для отображения JLabel. Панель содержимого JFrame - это JPanel, поэтому вы можете добавить метку непосредственно к фрейму.
пытается сделать (Игра)
Тем не менее, если вы пытаетесь создать игру, вы можете захотеть рисовать на заказ, чтобы вы могли контролировать размещение каждого изображения:
Основная логика в этом случае будет:
JPanel gamePane = new JPanel()
{
@Override
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawImage(background, ?, ?, this);
g.drawImage(foreground, ?, ?, this);
}
};
Теперь изображение на переднем плане будет рисовать поверх фонового изображения.
Конечно, вы должны разработать правильный класс с методами, позволяющими перемещать «персонажа» на «фоне».