如何等待弹出菜单关闭

时间:2013-04-11 19:55:02

标签: java swing events mouseevent jpopup

我是新手,我确信还有另一种方式,但是由于一些令人讨厌的api desing,我必须实现一个处理器,它可以重现MouseEvent并返回一个resault。我想向用户显示弹出菜单,并等待它关闭并根据用户选择的值返回值。 怎么做?                                                                           提前致谢。 确定具体问题: 物质TabClos​​eCallback接口有以下方法。

 public TabCloseKind onAreaClick(JTabbedPane tabbedPane,
          int tabIndex, MouseEvent mouseEvent);

我希望在根据用户选择的名称返回值时显示弹出菜单。

3 个答案:

答案 0 :(得分:3)

查看How to use Dialogs

这将允许您显示一个窗口,该窗口将在用户关闭之前阻止

答案 1 :(得分:1)

通过致电JPopupMenu.addPopupMenuListener()来了解您可以看到的事件。

特别是,您可以进行popupMenuWillBecomeInvisible()来电。

答案 2 :(得分:0)

您可以在弹出类中处理close事件并将变量设置为您期望的数据

yourWindow.addWindowListener(new WindowAdapter() {

    @Override
    public void windowClosing(WindowEvent e) {

        // catch what you want
    }
});