java menulistener_Java Swing - 如何使用PopupMenuListener处理JPopupMenu的事件

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JMenuItem;

import javax.swing.JPopupMenu;

import javax.swing.event.PopupMenuEvent;

import javax.swing.event.PopupMenuListener;

// Define PopupMenuListener

class MyPopupMenuListener implements PopupMenuListener {

public void popupMenuCanceled(PopupMenuEvent popupMenuEvent) {

System.out.println("Canceled");

}

public void popupMenuWillBecomeInvisible(PopupMenuEvent popupMenuEvent) {

System.out.println("Becoming Invisible");

}

public void popupMenuWillBecomeVisible(PopupMenuEvent popupMenuEvent) {

System.out.println("Becoming Visible");

}

}

public class PopupMenuListenerDemo {

public static void main(final String args[]) {

JFrame frame = new JFrame("PopupSample Example");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// Create popup menu, attach popup menu listener

JPopupMenu popupMenu = new JPopupMenu("Title");

PopupMenuListener popupMenuListener = new MyPopupMenuListener();

popupMenu.addPopupMenuListener(popupMenuListener);

// Cut

JMenuItem cutMenuItem = new JMenuItem("Cut");

popupMenu.add(cutMenuItem);

// Copy

JMenuItem copyMenuItem = new JMenuItem("Copy");

popupMenu.add(copyMenuItem);

// Paste

JMenuItem pasteMenuItem = new JMenuItem("Paste");

pasteMenuItem.setEnabled(false);

popupMenu.add(pasteMenuItem);

// Separator

popupMenu.addSeparator();

// Find

JMenuItem findMenuItem = new JMenuItem("Find");

popupMenu.add(findMenuItem);

JButton label = new JButton();

frame.add(label);

label.setComponentPopupMenu(popupMenu);

frame.setSize(350, 250);

frame.setVisible(true);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值