import javax.swing.*; import java.awt.event.*; import java.awt.*; public class SwingApplicationDemo extends JFrame implements ActionListener { JMenuBar wholeMenuBar; JMenu fileMenu, editMenu; JMenuItem openItem, saveItem, copyItem, pasteItem; JButton quitButton, rotateButton; Container c; public SwingApplicationDemo() { c=getContentPane(); c.setLayout(new FlowLayout()); wholeMenuBar = new JMenuBar(); setJMenuBar( wholeMenuBar ); // file menu, with Open, save fileMenu = new JMenu("File"); openItem = new JMenuItem("Open"); fileMenu.add(openItem); openItem.addActionListener(this); saveItem = new JMenuItem("Save"); fileMenu.add(saveItem); saveItem.addActionListener(this); wholeMenuBar.add(fileMenu); // edit menu, with copy, paste editMenu = new JMenu("Edit"); copyItem = new JMenuItem("Copy"); editMenu.add(copyItem); copyItem.addActionListener(this); pasteItem = new JMenuItem( "Paste" ); editMenu.add( pasteItem ); pasteItem.addActionListener(this); wholeMenuBar.add(editMenu ); // ovalimage.jpg is 20 by 20 pixels Icon ovalIcon = new ImageIcon("ovalimage.jpg"); rotateButton = new JButton("Rotate", ovalIcon); c.add(rotateButton); rotateButton.addActionListener(this); quitButton = new JButton("Quit"); c.add(quitButton); quitButton.addActionListener(this); setSize(200, 200); show(); } public void actionPerformed(ActionEvent e) { if (e.getSource() == openItem) { JFileChooser fileChooser = new JFileChooser(); int userResponse = fileChooser.showOpenDialog(this); if (userResponse == JFileChooser.CANCEL_OPTION ) JOptionPane.showMessageDialog(null, "User cancelled."); else JOptionPane.showMessageDialog(null, "User chose" + fileChooser.getSelectedFile()); } if (e.getSource() == saveItem) JOptionPane.showMessageDialog(null, "Save chosen."); if (e.getSource() == copyItem) JOptionPane.showMessageDialog(null, "Copy chosen."); if (e.getSource() == pasteItem) JOptionPane.showMessageDialog(null, "Paste chosen."); if (e.getSource() == rotateButton) JOptionPane.showMessageDialog(null, "Rotate clicked."); if(e.getSource() == quitButton) System.exit(0); } public static void main( String args[] ) { SwingApplicationDemo app = new SwingApplicationDemo(); app.setSize( 250, 200 ); app.show(); } }