21xrx.com
2025-03-27 12:44:31 Thursday
文章检索 我的文章 写文章
Java实现简单的图片显示
2023-06-16 21:44:55 深夜i     --     --
Java 图片显示 Image类 Graphics类

在Java中,可以通过Image类和Graphics类来实现图片的显示。通过Image类将图片加载进内存,然后通过Graphics类将图片绘制到屏幕上。

具体实现如下:

import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class ImageFrame extends JFrame {
  private static final long serialVersionUID = 1L;
  public ImageFrame() {
    setTitle("Java图片显示");
    setSize(400, 300); // 设置大小
    setLocationRelativeTo(null); // 居中显示
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 关闭窗口同时退出程序
    add(new ImagePanel()); // 添加面板
  }
  public static void main(String[] args) {
    new ImageFrame().setVisible(true);
  }
  class ImagePanel extends JPanel {
    private static final long serialVersionUID = 1L;
    @Override
    public void paint(Graphics g) {
      super.paint(g);
      BufferedImage img = null;
      try {
        img = ImageIO.read(new File("test.jpg")); // 加载图片
      } catch (IOException e) {
        e.printStackTrace();
      }
      Image scaledImg = img.getScaledInstance(getWidth(), getHeight(), Image.SCALE_SMOOTH); // 缩放图片
      g.drawImage(scaledImg, 0, 0, null); // 绘制图片
    }
  }
}

上述代码实现了显示一张名为test.jpg的图片,将图片缩放到与窗口大小相同,并在窗口中央显示。

  
  

评论区