Java - 触发 JPopupMenu 以在显示时执行代码?

Java - Triggering a JPopupMenu to execute code when it is shown?

当 JPopupMenu 出现时,我想为它执行一些代码。当 JPopupMenu 变得可见时,我不知道应该使用什么监听器来触发!

您应该注册一个 属性 更改侦听器。

JPopupMenu menu = new JPopupMenu();
menu.addPropertyChangeListener("visible", myPropertyChangeListener);

在侦听器中,您应该检查事件的新值是否为 Boolean.TRUE

what listener should i use to trigger when the JPopupMenu becomes visible!

如果您希望代码在菜单可见之前执行,以便您可以配置弹出窗口,您可以将 PopupMenuListener 添加到 JPopup。它支持 3 个事件:

  1. popupMenuCanceled
  2. popupMenuWillBecomeInvisible
  3. popupMenuWillBecomeVisible