メニューバー
●メニューバー
メニュー を作成するには、主に下記の 4つのクラスを用います。
・JMenuBar:メニューバー。
・JMenu:メニュー。子アイテムを持つメニュー項目。
・JMenuItem:メニューアイテム。子アイテムを持たないメニュー項目。
・JCheckBoxMenuItem:チェックタイプのメニューアイテム。
●サンプル
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class SwingMenuApp extends JFrame implements ActionListener{
//メニューアイテムの生成
String[] strMenuItem0 = { "開く", "終了" };
JMenuItem[] item0 = new JMenuItem[strMenuItem0.length];
SwingMenuApp(String title){
super(title);
Container cp = getContentPane();
//メニューバーの生成
JMenuBar bar = new JMenuBar();
//メニューの生成
JMenu menu0 = new JMenu("ファイル");
for(int i = 0; i < strMenuItem0.length; i++){
item0[i] = new JMenuItem(strMenuItem0[i]);
menu0.add(item0[i]);
item0[i].addActionListener(this);
}
//メニューをメニューバーに表示
bar.add(menu0);
setJMenuBar(bar);
}
public void actionPerformed(ActionEvent evt){
if(evt.getSource() == item0[0]) MenuFileOpen();
if(evt.getSource() == item0[1]) MenuFileExit();
}
public void MenuFileOpen(){
System.out.println("開く");
}
public void MenuFileExit(){
System.exit(0);
}
//ウィンドウが閉じられたときに終了するようにオーバーライド
protected void processWindowEvent(WindowEvent e){
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING){
MenuFileExit();
}
}
}
public class SwingMenu1{
public static void main(String[] args){
SwingMenuApp frame = new SwingMenuApp("MakeMenu");
frame.setSize(800, 600);
frame.setVisible(true);
}
}