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("Image"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } } class ImageViewerFrame extends JFrame { private JLabel label; private JFileChooser chooser; private static final int DEFALUT_WIDTH=1000; private static final int DEFALUT_HEIGHT=1000; public ImageViewerFrame(){ setSize(DEFALUT_WIDTH,DEFALUT_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(){ public void actionPerformed(ActionEvent event) { int result=chooser.showOpenDialog(null); 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(){ public void actionPerformed(ActionEvent event) { System.exit(0); } }); } }