メニュー (コンピュータ)

コンピュータのGUI環境におけるメニュー () とは、ディスプレイ上に何らかの一覧形式で表示される選択肢を指す。

ユーザーは、マウスやタッチパネルなどのポインティングデバイスまたはキーボードやジョイパッドを用い、メニューの選択肢の中から処理したい項目をポイント・アンド・クリックまたはカーソル移動と確定操作などで選択することによって、その処理を実行することができる。

歴史
ポップアップ式のメニュー（ウィジェット）を初めて実装したコンピュータはゼロックスのAlto（正確には暫定Dynabook）であった。

メニューバーおよびプルダウンメニューを発明したのは、ビル・アトキンソンで、彼は1983年に発売されたApple ComputerのLisaへ初めて実装した。

バリエーション
メニューには用途に応じていくつかのバリエーションがある。

 ポップアップメニュー
 メニューボタンを覆うように、メニューが上下に伸びる。
 プルダウンメニュー
 メニューバーにも用いられるもので、クリックするとメニューが下に伸びる。画面下に余白がない場合に限り上に伸びる。ドロップダウンメニューとも言う。
 コンボボックス
 入力欄がついたもので、メニューにない選択肢も利用できる。
 コンテキストメニュー
 画面上のアイテムを指した状態で右クリックまたはロングタップ（長押し）することで呼び出されるメニューであり、状況に応じてメニューの内容が変わる。ポップアップメニューとも呼ばれる。
 円形メニュー
 ポップアップメニューのうち、円形に表示されるもの。パイメニューとも呼ばれる。

キャラクタユーザインタフェースの場合
キャラクタユーザインタフェース環境におけるメニューでは、メニュー内の各項目が数字やアルファベット付きのリストの形で表示され、選択したい項目の番号または記号をキーボードで入力することにより処理を進めることができる。

例:
 S: 保存
 L: 読み込み
 R: 実行
 X: 終了

上記の例では、各メニュー項目の完全な名前（save, load, run, exit）を使ったコマンド文字列などを入力することなく、英語表記の頭文字やメニュー番号などを入力するだけで済むので省力化でき、また間違いが発生しにくい。英語のメニュー名を知らずとも、ローカライズされたメニュー名だけで内容を判断できるようになる利点もある。環境やソフトウェアによっては、最後に確定のためのEnterキーを押さずとも、対応する英数字キーを押しただけでメニューが選択されたことになるものもある。

一方でMidnight Commanderなど、グラフィカルなコマンド（グラフィカルシェル）においてはGUIとほぼ同じメニューが存在する。上下左右の方向キー（矢印キー）でカーソルを移動してメニューを選択したり、Escキーで操作をキャンセルしてメニューを閉じたりすることなどができるため、より直感的に操作できる。画面下段にファンクションキーに対応するショートカットメニューが表示されるものもあり、その内容は状況によって変化する。

 メニューバー 
メニューバーはいくつかのコマンド（命令）をカテゴリごとに分類しリスト形式にしたもの。メニューバーはOSに関係なく横一列に表示された各項目をマウスやタッチパネルなどのポインティングデバイスで選択することでコマンドを実行する。

メニューバーの最上位項目（トップレベルメニューAbout Menus - Win32 apps | Microsoft Learn）には、「ファイル」「編集」「表示」「設定」「ヘルプ」のように一般的で共通の基本項目が用意されていることが多い。メニューの各項目の中には、子項目を管理するだけで自分自身はコマンドを持たない親項目となっているものもある。通例、最上位項目は子項目を管理するだけとなっており、マウスでクリックするとその下にサブメニューが展開される。さらにその中にもサブメニューが存在する場合もあり、その場合は項目の右端に「>」のような記号が付いており、クリックすると右側（または左側）にサブメニューが展開される（ポイントするだけで展開されるシステムもある）。サブメニューを展開することを「メニューを開く」とも表現する。サブメニュー中の（子を持たない）項目をクリックすると該当コマンドの処理を実行することができる。各種設定のON/OFFを切り替えることのできる項目になっていることもあり、ONの場合は各項目にチェックマークが表示される。

アプリケーションによっては、メニューバーの各項目に対応するグラフィカルなアイコンが並んだツールバーやコマンドパレットウィンドウが存在することもあり、これらを利用して同等のコマンドを実行することができる。ツールバーは項目の配置をユーザーがカスタマイズすることもできるようになっていることが多い。

アプリケーションによっては、メニューバーやツールバーを持たず、ウィンドウ上にチェックボックスやラジオボタン、機能を呼び出すコマンドボタンなどが直接配置されていることもある（ダイアログベースのシンプルなアプリケーション）。

Mac OS
GUI環境であるMac OSでのメニューバーは、デスクトップの上部に常時表示される。アプリケーションを切り替えると、メニューバーの項目（メニュータイトルとも）も切り替わる。

また、Mac OS X/macOSではDockのアイコンをプレスしてアクティブでないアプリケーションのメニューを呼び出したりもできる。

一部のワープロソフトにおいてフォントを見た目のままメニューに表示し、フォントの選択を容易にするWYSIWYGフォントメニューという機能も存在する。このほか、ソフトウェアによってはメニューを切り離し、パレットウィンドウとして自由に配置できるティアオフメニューという機能がある。macOS以前のOSが持つ「アプリケーションメニュー」がまさにその好例といえよう。

なお、Mac OS 7.6より前のシステムではメニューバーをプレスしたままドラッグでメニュー項目を選択する必要があった。Mac OS 8からは現在のようにクリックでメニューを開き、さらに項目をクリックすることで操作ができるスティッキーメニューに改良された。

Windows
Windowsや、それを模倣したウィンドウマネージャやデスクトップ環境のメニューバーは、アプリケーションそれぞれのウィンドウ上部にメニューが配置され、各項目が横一列に並ぶように表示される。Mac OSには無い機能として「アクセスキー」Access keys design guidelines - Windows apps | Microsoft Learnという機能が存在する。Mac OSの「フルキーボードアクセス」との違いは、Altキーを押しながら、メニュー内に下線付きで示されたアルファベットもしくは数字のキーを押すことで、該当するメニュー項目を直接クリックしたときと同様の効果が得られることである。そのためアクセスキーはメニューバー専用のショートカットキーのバリエーションのひとつと考えることもできる。ただしすべてのメニュー項目にアクセスキーが設定されているとは限らない。

 脚注 
 注釈 

 出典 

関連項目
 グラフィカルユーザインタフェース
 ツールバー
 リボン (GUI)

Category:ウィジェット