import java.awt.EventQueue;
import javax.swing.JFrame;
public class ImageView {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
//创建图片容器
JFrame frame = new ImageViewFrame();
//设置关闭方式
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置窗体可见
frame.setVisible(true);
}
});
}
}
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class ImageViewFrame extends JFrame {
//标签
private JLabel label;
//文件选择器
private JFileChooser chooser;
//窗体的宽度 高度
private static final int WIDTH = 400;
private static final int HEIGHT = 400 ;
public ImageViewFrame() {
// TODO Auto-generated constructor stub
//设置窗体名称
setTitle("ImageViewer");
//设置窗体尺寸
setSize(WIDTH, 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 open = new JMenuItem("open");
//放置到File 选型中
menu.add(open);
//触发open
open.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//返回结果
int result = chooser.showOpenDialog(null);
//判断选中的文件对象
if (result == JFileChooser.APPROVE_OPTION) {
//获取路径
String name = chooser.getSelectedFile().getPath();
//设置图片
label.setIcon(new ImageIcon(name));
}
}
});
JMenuItem exit = new JMenuItem("exit");
menu.add(exit);
exit.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
});
}
}