Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách tạo JPopupMenu với submenu trong Java

JPopupMenu là một lớp con của JComponent và xuất hiện ở bất kỳ đâu trên màn hình khi click chuột phải. Để tạo popup menu, dùng lớp JPopupMenu. Thông thường thêm menu items vào JPopupMenu và thêm submenu bằng cách thêm menu items vào submenu trước rồi thêm vào JPopupMenu. Popup menu được kích hoạt bởi sự kiện chuột, nên cần đăng ký MouseListener. Ghi đè mouseReleased() để hiển thị popup menu khi có sự kiện phù hợp bằng cách gọi isPopupTrigger() và hiển thị bằng show() với tọa độ chuột.

Ví dụ

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();
    }
}

Kết quả

Cách tạo JPopupMenu với submenu trong Java