接下来,给出一个简单的Java图像文件查看器viewer
1)创建一个ImageViewer.java文件,并进行编码
2)完成编码后,在ImageViewer.java所在目录下打开一个shell窗口
3)键入下面的命令
javac ImageViewer.java
java ImageViewer
运行后将弹出一个标题栏为ImageViewer得新程序窗口,如图1所示。
程序源代码如下所示:
import java.awt.EventQueue;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class ImageViewer
{
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new ImageViewerFrame();
frame.setTitle("ImageViewer");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
class ImageViewerFrame extends JFrame
{
private JLabel label; //标签label用于显示选中的图片
private JFileChooser chooser; //图片选择器chooser
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 400;
public ImageViewerFrame()
{
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
//添加标签
label = new JLabel();
add(label);
//设置选择器
chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
//设置标题栏
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu menu = new JMenu("File");
menuBar.add(menu);
JMenuItem openItem = new JMenuItem("Open");
menu.add(openItem);
openItem.addActionListener(new ActionListener() //设置“Open"事件监听器
{
public void actionPerformed(ActionEvent event)
{
//显示图片选择对话框
int result = chooser.showOpenDialog(null);
//如果有图片被选中,在label中显示它
if(result == JFileChooser.APPROVE_OPTION)
{
String name = chooser.getSelectedFile().getPath();
label.setIcon(new ImageIcon(name));
}
}
});
JMenuItem exitItem = new JMenuItem("Exit");
menu.add(exitItem);
exitItem.addActionListener(new ActionListener() //设置”Exit“事件监听器
{
public void actionPerformed(ActionEvent event)
{
System.exit(0);
}
});
}
}
1)创建一个ImageViewer.java文件,并进行编码
2)完成编码后,在ImageViewer.java所在目录下打开一个shell窗口
3)键入下面的命令
javac ImageViewer.java
java ImageViewer
运行后将弹出一个标题栏为ImageViewer得新程序窗口,如图1所示。
图1
现在,选择File->Open,然后找到一个图像文件并打开,如图2所示。![](https://i-blog.csdnimg.cn/blog_migrate/c8bb3719a6d09c7f8c881467722ce59c.jpeg)
图2
要想关闭它,只需点击标题栏中的关闭按钮或者从菜单中选择File->Exit。
程序源代码如下所示:
import java.awt.EventQueue;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class ImageViewer
{
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new ImageViewerFrame();
frame.setTitle("ImageViewer");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
class ImageViewerFrame extends JFrame
{
private JLabel label; //标签label用于显示选中的图片
private JFileChooser chooser; //图片选择器chooser
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 400;
public ImageViewerFrame()
{
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
//添加标签
label = new JLabel();
add(label);
//设置选择器
chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
//设置标题栏
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu menu = new JMenu("File");
menuBar.add(menu);
JMenuItem openItem = new JMenuItem("Open");
menu.add(openItem);
openItem.addActionListener(new ActionListener() //设置“Open"事件监听器
{
public void actionPerformed(ActionEvent event)
{
//显示图片选择对话框
int result = chooser.showOpenDialog(null);
//如果有图片被选中,在label中显示它
if(result == JFileChooser.APPROVE_OPTION)
{
String name = chooser.getSelectedFile().getPath();
label.setIcon(new ImageIcon(name));
}
}
});
JMenuItem exitItem = new JMenuItem("Exit");
menu.add(exitItem);
exitItem.addActionListener(new ActionListener() //设置”Exit“事件监听器
{
public void actionPerformed(ActionEvent event)
{
System.exit(0);
}
});
}
}