Java 将图像置于背景中
我试图把am图像作为背景。 当我运行代码时,会出现一个没有显示任何内容的屏幕,另一个屏幕有两个按钮和黄色背景。如何替换黄色并放入我想要的图像Java 将图像置于背景中,java,swing,Java,Swing,我试图把am图像作为背景。 当我运行代码时,会出现一个没有显示任何内容的屏幕,另一个屏幕有两个按钮和黄色背景。如何替换黄色并放入我想要的图像 import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class GameFrame extends JFrame {
public BufferedImage image;
public JFrame gameframe;
public JPanel panel;
public JButton b1;
public JButton b2;
public JLabel lab;
public GameFrame() {
//SETTING GAMEFRAME
gameframe = new JFrame("Poop MAN");
gameframe.setVisible(true);
gameframe.setSize(1350, 1000);
gameframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel();
panel.setBackground(Color.yellow);
//BUTTONS
panel.setLayout(null);
b1 = new JButton("CONTROLS");
b2 = new JButton("START");
b1.setBounds(500, 200, 150, 150);
b2.setBounds(500, 400, 150, 150);
b1.setPreferredSize(new Dimension(50, 50));
b2.setPreferredSize(new Dimension(30, 50));
panel.add(b1, BorderLayout.SOUTH);
panel.add(b2, BorderLayout.SOUTH);
gameframe.add(panel);
gameframe.repaint();
}
public void ImagePanel() {
try {
image = ImageIO.read(new File("unnamed"));
} catch (IOException ex) {
}
}
public BufferedImage getImg() {
return image;
}
}
要想让它看起来漂亮,这并不那么直截了当。看一看背景面板googleit,真的很有帮助你的意思是类似或?看到四个链接示例了吗?看看是怎么做的。如果您不熟悉扩展类、重写方法或自定义绘制,我建议您在开始制作游戏之前花点时间学习它们,您需要了解这些术语以及如何应用它们。你可能会发现,在这种情况下,可能是一个很好的阅读,以及,和。从一些小想法开始,找出如何让它们发挥作用,然后将它们结合在一起。摆脱
扩展JFrame
,它会使代码复杂化,不会增加真正的价值