java程序插入图片的两种方法
方法一
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GamePanel extends JPanel {
//Writer:Afang
//Time:2020.3.27
public void paint(Graphics g) {// g=画笔
try {
// 加载图片
BufferedImage bg = ImageIO.read(this.getClass().getResourceAsStream("img/bg.png"));
// 绘制图片
g.drawImage(bg, 0, 0, null);
} catch (IOException e) {
System.out.println("加载图片失败");
}
}
public static void main(String[] args) {
// 创建框架
JFrame jf = new JFrame();
// 创建面板
GamePanel gp = new GamePanel();
// 框架添加面板
jf.add(gp);
// 设置大小
jf.setSize(300, 300);
// 设置可见性
jf.setVisible(true);
}
}
方法二
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Window extends JFrame{
//Writer:Afang
//Time:2020.3.27
public Window() {
this.setResizable(false);//禁止窗口放大缩小
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//点击关闭按钮时 关闭程序
this.setVisible(true);//显示窗口
//获取屏幕大小
this.setSize(1100, 650);
//读取图片
BufferedImage img=null;
try {
img=ImageIO.read(new File("./img/bg.png"));
} catch (IOException e) {
System.out.println("图片加载失败");
}
getContentPane().setLayout(null);
//设置图片
JLabel label=new JLabel(new ImageIcon(img));
getContentPane().add(label);
//在窗口左上角放置一张图片
label.setBounds(0, 0, img.getWidth(),img.getHeight() );
}
public static void main(String[] args) {
new Window();
}
}