next up previous
Next: 6 Java3Dのプログラミング Up: 5 Swingパッケージ Previous: 5.2 GUI部品

5.3 JMenuクラス

図 10: MyMenu.javaの表示
\includegraphics[width=6cm]{/home/inaba/eps/lecture/fig/MyMenu.eps}
\includegraphics[width=6cm]{/home/inaba/eps/lecture/fig/MyMenu2.eps}
package gui;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class MyMenu
  extends JFrame implements ActionListener {
  public MyMenu() {
    createComponents ();

    setJMenuBar (jMenuBar);
    getContentPane().add(
      jToolBar, BorderLayout.SOUTH);

    setTitle("メニューバーとツールバー");
    setDefaultCloseOperation(
      JFrame.EXIT_ON_CLOSE);
    setSize(250, 120);
    setVisible(true);
  }

  void createComponents () {
    // JMenuBar
    jMenuItem1 =
      new JMenuItem ("メニュー項目 1.1");
    jSeparator1 = new JSeparator ();
    jCheckBoxMenuItem =
      new JCheckBoxMenuItem (
	"JCheckBoxMenuItem");
    jRadioButtonMenuItem =
      new JRadioButtonMenuItem (
	"JRadioButtonMenuItem");
    jMenu1 = new JMenu ("メニュー 1");
    jMenu1.add (jMenuItem1);
    jMenu1.add (jSeparator1);
    jMenu1.add (jCheckBoxMenuItem);
    jMenu1.add (jRadioButtonMenuItem);

    jMenuItem2 =
      new JMenuItem ("メニュー項目 2.1");
    jSeparator2 = new JSeparator ();
    jMenu3 = new JMenu ("メニュー 2.2");
    jMenu2 = new JMenu ("メニュー 2");
    jMenu2.add (jMenuItem2);
    jMenu2.add (jSeparator2);
    jMenu2.add (jMenu3);

    jMenuItem3 =
      new JMenuItem ("メニュー項目 2.2.1");
    jMenuItem4 =
      new JMenuItem ("メニュー項目 2.2.2");
    jMenu3.add (jMenuItem3);
    jMenu3.add (jMenuItem4);

    jMenuBar = new JMenuBar ();
    jMenuBar.add (jMenu1);
    jMenuBar.add (jMenu2);

    // JToolBar
    jButton3 = new JButton ("ボタン 3");
    jButton3.setToolTipText ("Popup Menu");
    jButton3.addActionListener (this);
    jButton4 = new JButton ("ボタン 4");

    jToolBar = new JToolBar ();
    jToolBar.add (jButton3);
    jToolBar.add (jButton4);

    jMenuItem5 =
      new JMenuItem ("メニュー項目 3.1");
    jMenuItem6 =
      new JMenuItem ("メニュー項目 3.2");
    jPopupMenu = new JPopupMenu ();
    jPopupMenu.add (jMenuItem5);
    jPopupMenu.add (jMenuItem6);
  }

  public void actionPerformed (ActionEvent ev) {
    jPopupMenu.show(jButton3, 20, 20);
  }

  public static void main (String[] args) {
    new MyMenu ();
  }

  JMenuBar jMenuBar;
  JMenu jMenu1, jMenu2, jMenu3;
  JMenuItem jMenuItem1, jMenuItem2,
    jMenuItem3, jMenuItem4,
    jMenuItem5, jMenuItem6;
  JSeparator jSeparator1, jSeparator2;
  JCheckBoxMenuItem jCheckBoxMenuItem;
  JRadioButtonMenuItem jRadioButtonMenuItem;
  JPopupMenu jPopupMenu;
  JToolBar jToolBar;
  JButton jButton3, jButton4;
}


generated through LaTeX2HTML. M.Inaba 平成18年5月7日