如何在Java中将图像置于前台?
我正在尝试用Java创建一个吃豆人游戏,到目前为止我已经显示了背景图像(蓝色和黑色迷宫),但是我在显示吃豆人的图像时遇到了问题。当我尝试用我显示背景的相同方法显示他时,除非我稍微手动改变Jframe的大小,否则他不会出现。即使如此,当他出现时,在他的图像的右下角仍然有一个白色的小正方形。我能做些什么来解决这个问题?有没有其他方法可以插入pacman图像 代码如下:如何在Java中将图像置于前台?,java,image,swing,graphics,pacman,Java,Image,Swing,Graphics,Pacman,我正在尝试用Java创建一个吃豆人游戏,到目前为止我已经显示了背景图像(蓝色和黑色迷宫),但是我在显示吃豆人的图像时遇到了问题。当我尝试用我显示背景的相同方法显示他时,除非我稍微手动改变Jframe的大小,否则他不会出现。即使如此,当他出现时,在他的图像的右下角仍然有一个白色的小正方形。我能做些什么来解决这个问题?有没有其他方法可以插入pacman图像 代码如下: JFrame window = new JFrame(); ImageImplement pacman = new Ima
JFrame window = new JFrame();
ImageImplement pacman = new ImageImplement(new ImageIcon("C:\\Users\\16ayoubc\\Desktop\\Pacman-moving.gif").getImage());
ImageImplement panel = new ImageImplement(new ImageIcon("C:\\Users\\16ayoubc\\Desktop\\background.png").getImage());
pacman.setLocation(255, 255);
pacman.setVisible(true);
pacman.setOpaque(true);
window.add(pacman);
window.add(panel);
window.setVisible(true);
window.setSize(576,655);
window.setName("Pacman");
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
在添加背景之前,您正在添加pacman,因此它正在绘制pacman精灵,而您没有看到它。确保在游戏中以相反的顺序绘制项目,因此首先绘制背景,然后绘制pacman。使用JLayeredPane代替窗口直接绘制容器,并在添加组件时指定组件的深度(z顺序)
window.add(pacman);
window.add(panel);
不能将两个组件添加到BorderLayout的中心
如果希望pacman出现在面板上,则将pacman添加到窗口:
//window.add(pacman);
panel.add(packman)
window.add(panel);
我认为这个选项会起作用,但我们是初学者,如果你能提供一些实现这个的示例代码,那就太好了。我们将不胜感激。谢谢
//window.add(pacman);
panel.add(packman)
window.add(panel);