public MyFrame() { setSize(300,200); //×ボタンを押したときの処理 addWindowListener(new MyWindowAdapter()); //オブジェクトを実体化 menuBar = new JMenuBar(); menuFile = new JMenu("File"); menuOpen = new JMenuItem("Open"); menuExit = new JMenuItem("Exit"); //ルートパネルにメニューバーを追加 getRootPane().setJMenuBar(menuBar); //メニューバーにファイルを追加 menuBar.add(menuFile); //ファイルに開く閉じるを追加 menuFile.add(menuOpen); menuFile.add(menuExit); //メニューを押したとき menuOpen.addActionListener(this); menuExit.addActionListener(this); } //メニューを押したときの処理 public void actionPerformed(ActionEvent ae){ if (ae.getSource() == menuOpen) System.out.println("メニューオープンがクリックされました"); JFileChooser filechooser = new JFileChooser();
int selected = filechooser.showOpenDialog(this); if (selected == JFileChooser.APPROVE_OPTION){ File file = filechooser.getSelectedFile(); System.out.println(file.getName());
}else if (selected == JFileChooser.CANCEL_OPTION){ System.out.println("キャンセルされました"); }else if (selected == JFileChooser.ERROR_OPTION){ System.out.println("エラーまたは取り消しがありました"); } else if (ae.getSource() == menuExit) System.out.println("メニューexitがクリックされました"); System.exit(0); } }
class MyWindowAdapter extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } public class frameTest { /** * @param args */ public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ MyFrame f = new MyFrame(); f.setVisible(true); } }