一、准备工作

在开始编写代码之前,我们需要确保已经安装了以下工具和库:

  1. Java开发环境:确保你的系统中已经安装了JDK(Java Development Kit)。
  2. 图片查看库:我们将使用Java的AWT(Abstract Window Toolkit)库来显示图片。

二、理解Java AWT库

三、编写代码

import java.awt.Frame;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.Toolkit;
import java.io.File;

public class Image Viewer extends Frame {
    public Image Viewer(String fileName) {
        // 获取工具包
        Toolkit toolkit = Toolkit.getDefaultToolkit();
        
        // 加载图片
        Image image = toolkit.getImage(fileName);
        
        // 创建媒体跟踪器
        MediaTracker mediaTracker = new MediaTracker(this);
        mediaTracker.addImage(image, 0);
        
        try {
            // 等待图片加载完成
            mediaTracker.waitForID(0);
        } catch (InterruptedException e) {
            System.out.println("图片加载被中断!");
            e.printStackTrace();
        }
        
        // 设置窗口大小为图片大小
        setSize(image.getWidth(null), image.getHeight(null));
        
        // 显示图片
        getGraphics().drawImage(image, 0, 0, null);
    }

    public static void main(String[] args) {
        if (args.length == 0) {
            System.out.println("请提供图片文件路径!");
            return;
        }
        
        String fileName = args[0];
        File file = new File(fileName);
        
        if (!file.exists()) {
            System.out.println("文件不存在:" + fileName);
            return;
        }
        
        Image Viewer viewer = new Image Viewer(fileName);
        viewer.setVisible(true);
    }
}

四、代码详解

  1. 导入必要的类:我们导入了FrameImageMediaTrackerToolkit等类。
  2. 构造函数Image Viewer类的构造函数接受一个文件名参数,用于加载和显示图片。
  3. 加载图片:使用Toolkit类的getImage方法加载图片。
  4. 媒体跟踪器:使用MediaTracker确保图片完全加载。
  5. 设置窗口大小:根据图片的宽度和高度设置窗口大小。
  6. 显示图片:使用drawImage方法在窗口中绘制图片。
  7. 主函数:在main函数中,我们检查命令行参数,确保提供了图片文件路径,并创建Image Viewer实例。

五、运行程序

编译并运行上述程序,你需要打开终端并执行以下命令:

javac Image Viewer.java
java Image Viewer /path/to/your/image.jpg

六、总结