Google検索エンジン

トップページ » Javaアプリケーション開発 » JMenuBarメニューバーを表示する方法


JMenuBarの使い方(メニューバーを表示する方法)

  • メニューバーを表示するときはJMenuBarクラスを使用します。 setMnemonicメソッドを使用すると、現在のモデルにキーボードニーモニックを設定することができます。 ニーモニックとは、フォーカスがボタンの上位ウィンドウのどこかにある場合に、Look & Feel のマウスなし修飾子 (通常は Alt) と組み合わせて、ボタンを有効化するキーのことです。 下のサンプルソースコードでもニーモニックを設定しています。


    ■JMenuBar

    メニューバーの実装です。 メニューを構築するには、メニューバーに JMenu オブジェクトを追加します。 ユーザーが JMenu オブジェクトを選択すると、対応する JPopupMenu が表示され、ユーザーは JMenuItem のいずれかを選択することができます。


    ■JMenu

    メニューの実装であり、ユーザーが JMenuBar で項目を選択すると表示される子メニューアイテム(JMenuItem)を保持するポップアップウィンドウです。 JMenuItem のほかに、JMenu には JSeparator も含めることができます。


    ■JMenuItem

    メニュー項目の実装であり、メニューアイテムそのものです。 メニュー項目は実質的にはリストに置かれているボタンです。


    ■JCheckBoxMenuItem

    選択または選択解除できるメニュー項目です。選択されている場合、通常はメニュー項目の横にチェックマークが表示されます。 選択されていないか、あるいは選択が解除された場合、メニュー項目はチェックマークなしで表示されます。 通常のメニュー項目と同じように、チェックボックスメニュー項目は、関連付けられたテキストまたはグラフィックアイコン、またはこの両方を持つことができます。


    JMenuBarを使ってメニューバーを表示した例
    JMenuBarを使ってメニューバーを表示したサンプル画像
    サンプルソースコード
    import java.awt.event.*;
    import javax.swing.*;
    
    class JMenuBarSample extends JFrame
                        implements ActionListener {
       JMenuBarSample() {
          JMenuBar menuBar = new JMenuBar();
          JMenu menuFile = new JMenu("File");
          JMenuItem menuOpen = new JMenuItem("Open");
          JMenuItem menuExit = new JMenuItem("Exit");
          JMenu menuView = new JMenu("View");
          JCheckBoxMenuItem menuTool
                          = new JCheckBoxMenuItem("Tool Bar");
          JMenu menuSize = new JMenu("Size");
          JMenuItem menuSizeLarge = new JMenuItem("Large");
          JMenuItem menuSizeSmall = new JMenuItem("Small");
    
          menuFile.setMnemonic(KeyEvent.VK_A);
          menuOpen.setMnemonic(KeyEvent.VK_B);
          menuExit.setMnemonic(KeyEvent.VK_C);
          menuView.setMnemonic(KeyEvent.VK_D);
          menuTool.setMnemonic(KeyEvent.VK_E);
          menuSize.setMnemonic(KeyEvent.VK_F);
          menuSizeLarge.setMnemonic(KeyEvent.VK_G);
          menuSizeSmall.setMnemonic(KeyEvent.VK_H);
    
          menuOpen.addActionListener(this);
          menuExit.addActionListener(this);
          menuTool.addActionListener(this);
          menuSizeLarge.addActionListener(this);
          menuSizeSmall.addActionListener(this);
    
          getRootPane().setJMenuBar(menuBar);
          menuBar.add(menuFile);
          menuFile.add(menuOpen);
          menuFile.add(menuExit);
          menuBar.add(menuView);
          menuView.add(menuTool);
          menuView.add(menuSize);
          menuSize.add(menuSizeLarge);
          menuSize.add(menuSizeSmall);
    
          setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          setTitle("JMenuBarを使ってメニューバーを表示");
          setSize(530, 120);
          setVisible(true);
       }
       public void actionPerformed(ActionEvent e) {
          System.out.println("["+ e.getActionCommand() +"]");
       }
       public static void main(String[] args) {
          new JMenuBarSample();
       }
    }
    

Swingでアプリのパーツを表示する方法
書籍の紹介
  • Java ポケットリファレンス
    Java ポケットリファレンス
    発売:2011/03/25
    定価:2,709円
    著者:高江 賢
    出版:技術評論社
    内容:ベーシックだけど忘れてしまいがちな情報をコンパクトなサイズに凝縮し、「逆引き形式で目的からすぐ探せる」「サンプルコードを見ながら具体的な実装のイメージがつかめる」特徴で現場に欠かせない1冊です。
  • フェイスブック 若き天才の野望 (5億人をつなぐソーシャルネットワークはこう生まれた)
    フェイスブック 若き天才の野望
    発売:2011/01/13
    定価:1,890円
    著者:デビッド・カークパトリック
    出版:日経BP社
    内容:ユーザー数が5億人を超え、会社の時価総額が2兆円を超え、グーグルを驚かす存在となった、フェイスブック。同社を率いるマスコミ嫌いのCEO、マーク・ザッカーバーグからの信頼を勝ち得たベテラン記者が、徹底取材からフェイスブックの真実を初めて明かします。
  • プログラマが知るべき97のこと
    プログラマが知るべき97のこと
    発売:2010/12/18
    定価:1,995円
    著者:和田 卓人
    出版:オライリージャパン
    内容:世界中で活躍するプログラマによる97本のエッセイを収録した書籍です。プログラミングにおいてもっとも重要な事柄は何か、バージョン管理やテスティング、設計原則とコーディングテクニック、また腕を磨くための勉強法などについて、経験豊かなプログラマが自らの体験を踏まえて解説します。
  • 明解Java 入門編
    明解Java 入門編
    発売:2007/08/08
    定価:2,730円
    著者:柴田 望洋
    出版:ソフトバンククリエイティブ
    内容:丁寧な解説と適切なサンプルプログラム248編と、豊富で分かりやすい図表278点で、Javaの基礎から学習できます。Javaプログラミング初心者におすすめの一冊です。