如何使用 Java 中的 JPopupMenu 實現右鍵選單?


JPopupMenu右鍵單擊後出現在螢幕上的任意位置。

JPopupMenu

  • 彈出選單是一個關聯於名為 呼叫方 的基礎元件的自由浮動的選單。
  • 大多數情況下,彈出選單與特定元件相關聯,以顯示與上下文相關的選項。
  • 為了建立一個彈出選單,我們可以使用 JPopupMenu 類,我們可以像普通的選單那樣將 JMenuItem 新增到彈出選單。
  • 為了顯示彈出選單,我們可以呼叫 show()  方法,通常彈出選單是響應於滑鼠事件呼叫的。

示例

import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class JPopupMenuTest extends JFrame {
   private JPopupMenu popup;
   public JPopupMenuTest() {
      setTitle("JPopupMenu Test");
      Container contentPane = getContentPane() ;
      popup = new JPopupMenu();
      // add menu items to popup
      popup.add(new JMenuItem("Cut"));
      popup.add(new JMenuItem("Copy"));
      popup.add(new JMenuItem("Paste"));
      popup.addSeparator();
      popup.add(new JMenuItem("SelectAll"));
      contentPane.addMouseListener(new MouseAdapter() {
         public void mouseReleased(MouseEvent me) {
            showPopup(me); // showPopup() is our own user-defined method
         }
      }) ;
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   void showPopup(MouseEvent me) {
      if(me.isPopupTrigger())
         popup.show(me.getComponent(), me.getX(), me.getY());
   }
   public static void main(String args[]) {
      new JPopupMenuTest();
   }
}

輸出

更新於: 2020 年 2 月 7 日

1 千次以上觀看

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告