-
ポップアップメニューを表示するにはJPopupMenuクラスを使用します。 JPopupMenuクラスのshowメソッドを実行することで、呼び出しコンポーネント内の x座標、y座標で指定された位置に、ポップアップメニューを表示します。
アクションを判定するときは、isPopupTriggerメソッドを使用してMouseEventを判定することができます。 isPopupTriggerメソッドは、MouseEventをポップアップトリガーと見なす場合、戻り値としてtrueを返します。 下のサンプルソースコードの場合は、右クリックするとポップアップトリガーと判定して、ポップアップメニューを表示します。
アクションイベント全てを監視するときは、ActionListenerをimplementsします。 マウスに関連するイベントを監視するときは、MouseListenerをimplementsします。
JPopupMenuを使ってポップアップメニューを表示した例 サンプルソースコード import java.awt.*; import java.awt.event.*; import javax.swing.*; class JPopupMenuSample extends JFrame implements ActionListener, MouseListener { JPopupMenu popup = new JPopupMenu(); JPopupMenuSample() { JMenuItem menuA = new JMenuItem("メニューA"); JMenuItem menuB = new JMenuItem("メニューB"); menuA.addActionListener(this); menuB.addActionListener(this); popup.add(menuA); popup.add(menuB); getContentPane().addMouseListener(this); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setTitle("JPopupMenuを使ってポップアップメニューを表示"); setSize(530, 100); setVisible(true); } public void actionPerformed(ActionEvent e) { System.out.println(e.getActionCommand()); } public void mousePressed(MouseEvent e) { System.out.println("マウスボタンを押す"); } public void mouseReleased(MouseEvent e) { if (e.isPopupTrigger()) { popup.show(e.getComponent(), e.getX(), e.getY()); System.out.println("マウスボタン右を離す"); }else{ System.out.println("マウスボタン左を離す"); } } public void mouseClicked(MouseEvent e) { System.out.println("マウスボタンをクリック"); } public void mouseEntered(MouseEvent e) { System.out.println("カーソルON"); } public void mouseExited(MouseEvent e) { System.out.println("カーソルOFF"); } public static void main(String[] args) { new JPopupMenuSample(); } }
トップページ » Javaアプリケーション開発 » JPopupMenuポップアップメニューの表示
-
- javax.swingとは
- JFrameフレームの表示
- JDialogダイアログの表示
- JButtonボタンの表示
- JToggleButtonトグルボタンの表示
- JLabel画像やテキストの表示
- JTextFieldテキスト入力領域の表示
- JTextAreaテキストエリアの表示
- JCheckBoxチェックボックスの表示
- JRadioButtonラジオボタンの表示
- JComboBoxコンボボックスの表示
- JListリストの表示
- JScrollBarスクロールバーの表示
- JTableテーブルの表示
- JTreeツリーマップ(構造)の表示
- JProgressBarプログレスバーの表示
- JPanelパネルの表示とレイアウト整形
- JScrollPaneスクロールペインの表示
- JTabbedPaneタブペインの表示
- JMenuBarメニューバーの表示
- JToolBarツールバーの表示
- JPopupMenuポップアップメニューの表示
-
-
- Effective Java
- 発売:2008/11/27
- 定価:3,780円
- 著者:Joshua Bloch他
- 出版:ピアソンエデュケーション
内容:著者のGoogle, Sun Microsystemsにおけるソフトウェア開発で得た知識・経験をまとめています。Javaプログラミングをする全てのSE必読の書籍です。 -
- プログラミング言語Java
- 発売:2007/04
- 定価:4,410円
- 著者:ケン・アーノルド他
- 出版:ピアソンエデュケーション
内容:Javaの原典と呼べる本です。変数、コメント、定数、制御、クラス、配列、文字列、例外処理までわずか30ページで進むので、Javaを学習し始めたばかりの方には少し難しいかもしれません。厚さの割に価格も手ごろなので、Java使いなら本棚に置いておきたい本です。 -
- なぜ、あなたはJavaでオブジェクト指向開発ができないのか
- 発売:2004/12
- 定価:2,289円
- 著者:小森 裕介
- 出版:技術評論社
内容:Javaのソフトウェア開発を中心に事業を発展させてきたSMG社の新人教育セミナーを加筆・書籍化したもので、大卒の新人に対して、ゼロからJava言語を教えてきた実績をフィードバックしています。
-