8. 基本的なコンポ−ネント2
ユーザインタフェース 8章 基本的なコンポ−ネント2
8.1. javax.swing.JPopupMenu
「JPopupMenu」はポップアップメニューを実現するクラスです。インスタンスの作成は以下のようにします。
JPopupMenu popupMenu=new JPopupMenu();
引数を指定して「ラベル」を付ける事もできますが、見た目には影響しません。メニューの追加は「add」メソッドを使用します。
popupMenu.add(new JMenuItem("help"));
「addSeparator」メソッドを使用することにより、メニューとメニューの間に「分割線」を加える事も可能です。最後に表示は「show」メソッドを使用します。
popupMenu.show(this,0,0);
1つ目の引数は「invoker」といい、ポップアップメニューの呼び出し元のコンポーネントを指定します。大抵はポップアップメニューを表示させるイベントを発生させたコンポーネントを指定します。2・3番目の引数はポップアップメニューを表示する座標を指定します。1番目で指定された、呼び出し元のコンポーネントから見た相対的な座標を指定します。
以下はポップアップメニューのサンプルです。中央に浮き出たように表示されているウィンドウがポップアップメニューです。
(実習課題1)
以下のプログラムを作成しなさい。
- ウィンドウに含まれるコンポーネントはボタン1つ。テキスト等は任意。
- ボタンが押されるとポップアップメニューが表示される。
- ポップアップメニューに含まれるメニューは2つ以上。テキスト等は任意。
- メニューが選択されるとボタンのテキストが変わるようにする事。