A JPopupMenu appears anywhere on the screen when a right mouse button is clicked.
JPopupMenu
- A popup menu is a free-floating menu which associates with an underlying component called the invoker.
- Most of the time, a popup menu is linked to a specific component to display context-sensitive choices.
- In order to create a popup menu, we can use the JPopupMenu class., we can add the JMenuItem to popup menu like a normal menu.
- To display the popup menu, we can call the show() method, normally popup menu is called in response to a mouse event.
Example
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(); } }