如何在 Java 中使用子選單建立 JPopupMenu?
JPopupMenu 是 JComponent 類的子類,它可以在右鍵點選時出現在螢幕的任意位置。為了建立一個彈出選單,我們可以使用 JPopupMenu 類。通常,我們可以將 選單項 新增到 JPopupMenu 中,還可以透過將選單項先新增到子選單中,然後將其新增到 JPopupMenu 中,向 JPopupMenu 新增 子選單 。彈出選單由滑鼠事件觸發,因此我們需要註冊一個 MouseListener 介面。我們可以重寫 mouseReleased() 方法,以便在透過呼叫 isPopupTrigger() 方法獲得適當事件後顯示彈出選單,並透過以滑鼠事件座標作為引數呼叫其 show() 方法來顯示彈出選單。
示例
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class JPopupMenuwithSubMenuTest extends JFrame {
private JPopupMenu popup;
private JMenu subMenu;
public JPopupMenuwithSubMenuTest() {
setTitle("JPopupMenuwithSubMenu Test");
popup = new JPopupMenu();
subMenu = new JMenu("Course");
subMenu.add("Java");
subMenu.add("Python");
subMenu.add("Scala");
popup.add(new JMenuItem("First Name"));
popup.add(new JMenuItem("Last Name"));
popup.addSeparator();
popup.add(subMenu);
addMouseListener(new MouseAdapter() {
public void mouseReleased(MouseEvent me) {
showPopup(me);
}
}) ;
setSize(400, 275);
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 JPopupMenuwithSubMenuTest();
}
}輸出
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP