JMenu クラス
- [内容]
- メニューバー上のメニューを設定するためのクラスです
- [コンストラクタ]
- public JMenu()
- public JMenu(Action a)
- public JMenu(String s)
- JMenu オブジェクトを生成する
- [主なメソッド]
- public JMenuItem add(Action a)
- public Component add(Component c)
- public Component add(Component c, int index)
- public JMenuItem add(JMenuItem menuItem)
- public JMenuItem add(String s)
- メニューに他のメニュー(サブメニュー),または,項目を貼り付ける
- public void addSeparator()
- セパレータを貼り付ける
- public void doClick(int pressTime)
- プログラム上で「クリック」を実行する.ユーザがマウスをクリックした場合と同じことを行う.指定された時間(ミリ秒)だけ,ボタンの表示が押された状態になる.
- public JMenuItem getItem(int pos)
- 指定された位置の JMenuItem を返す
- public int getItemCount()
- セパレータを含めたメニュー項目数を返す
- public JMenuItem insert(Action a, int pos)
- public JMenuItem insert(JMenuItem mi, int pos)
- public void insert(String s, int pos)
- 指定された位置に項目を挿入する
- public void insertSeparator(int index)
- セパレータを挿入する
- public void paint(Graphics g) ( JComponent から継承)
- コンポーネントを描画
- public void paintAll(Graphics g) ( Component から継承)
- このコンポーネントおよびそのすべてのサブコンポーネントを描画
- public void paintComponent(Graphics g) ( JComponent から継承)
- コンポーネントを描画
- public void paintComponents(Graphics g) ( Container から継承)
- コンテナ内の各コンポーネントを描画
- public void remove(Component c)
- public void remove(int pos)
- public void remove(JMenuItem item)
- 項目を取り除く
- public void removeAll()
- すべての項目を取り除く
- public void repaint() ( Component から継承)
- public void repaint(int x, int y, int width, int height) ( Component から継承)
- public void repaint(long tm) ( Component から継承)
- public void repaint(Rectangle r) ( JComponent から継承)
- public void repaint(long tm, int x, int y, int width, int height) ( JComponent から継承)
- 指定された矩形領域を,tm ミリ秒以内に再描画する
- public void setEnabled(boolean b) ( JMenuItem から継承)
- コンポーネントを enable,または,disable にする.disable にするとイベントを受け付けなくなる.
- public void setFont(Font f) ( JComponent から継承)
- フォントを設定する
- public void setIcon(Icon defaultIcon) ( AbstractButton から継承)
- デフォルトアイコンを設定する
- public void setMnemonic(char mnemonic) ( AbstractButton から継承)
- ニーモニック値を指定する.この指定により,「 Alt + キー」によりメニューを選択した状態になる.
- public void setText(String text) ( AbstractButton から継承)
- ラベルを設定する
- public void setToolTipText(String text) ( JComponent から継承)
- ツールチップに表示するテキストを登録する.このテキストは,カーソルがコンポーネント上にあるときに表示される.
- public void setVisible(boolean b) ( JComponent から継承)
- コンポーネントを表示,非表示にする
- [使用例]
- プログラム例は,メニューバー関連クラスの各メソッド等の使用例です.メニューバーの編集という項目をクリックすると,下図に示すようなメニューが出現します.最初の 2 つのメニュー(アイコンも貼り付けあります)をクリックすると,テキストエリアにメッセージが表示されます.3 番目の項目は,サブメニューを持っており,テキストエリアの内容に対して,カット&ペーストを行うことができます.また,最後の項目をクリックすると Window が閉じられます.
- 1 番目のメニューには,キーボードショートカットが割り付けられています.メニューを開いた状態で,キーボードの「 m 」キーを押すとこのメニュー項目が選択されます.また,2 番目の項目には,アクセラレータが割り付けられています.メニューを開かない状態でも,「 CTRL + m 」キーを押せばこの項目が実行されます.

- プログラム例は,上の例に,JCheckBoxMenuItem と JRadioButtonMenuItem をメニュー項目として持つ「選択」というメニューを加えた例です.各項目をクリックすると,チェックの印が付く(または,消される)と共に,テキストエリアにメッセージが出力されます.また,各メニューは,「 Alt + n 」,及び,「 Alt + m 」キーを押すことによっても実行できます.

- [参照]
- JMenuBar, JMenuItem, JCheckBoxMenuItem, JRadioButtonMenuItem, MenuBar, Menu, MenuItem, CheckboxMenuItem, ActionEvent, ActionListener, MouseEvent, MouseListener, JPopupMenu