importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.io.File;importjavax.swing.ImageIcon;importjavax.swing.JFileChooser;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JMenu;importjavax.swing.JMenuBar;importjavax.swing.JMenuItem;publicclassImageViewer {publicstaticvoidmain(String[] args) {
JFrame frame=newImageViewerFrame();
frame.setVisible(true);
}
}classImageViewerFrameextendsJFrame {privateJLabel label;privateJFileChooser chooser;privatestaticfinallongserialVersionUID=1L;//序列化版本publicImageViewerFrame() {
setTitle("ImageViewer");
setSize(300,400);
setLocationRelativeTo(null);//初始在屏幕中央setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使点击红X可以退出程序label=newJLabel();//用于显示照片add(label);
chooser=newJFileChooser();//文件浏览器chooser.setCurrentDirectory(newFile("."));
JMenuBar menuBar=newJMenuBar();//菜单栏setJMenuBar(menuBar);
JMenu menu=newJMenu("File");
menuBar.add(menu);
JMenuItem openItem=newJMenuItem("Open");
menu.add(openItem);
openItem.addActionListener(newActionListener() {//显示浏览文件对话框publicvoidactionPerformed(ActionEvent event) {intresult=chooser.showOpenDialog(null);if(result==JFileChooser.APPROVE_OPTION) {
String filename=chooser.getSelectedFile()
.getPath();
label.setIcon(newImageIcon(filename));
}
}
});
JMenuItem exitItem=newJMenuItem("Exit");
menu.add(exitItem);
exitItem.addActionListener(newActionListener() {//菜单中的退出按钮publicvoidactionPerformed(ActionEvent event) {
System.exit(0);
}
});
}
}