【问题标题】:How to JOptionPane() after right click of and object右键单击和对象后如何 JOptionPane()
【发布时间】:2012-03-17 19:59:26
【问题描述】:

我想制作一个鼠标事件,允许我右键单击选项卡,以选择和删除它。标签名右击后如何启用JOptionPane()

因为我不知道,所以我无法尝试自己......

【问题讨论】:

  • 当你说“还没能尝试自己”时……这是为什么呢?您使用的是什么 IDE?
  • 好吧,我不知道从哪里开始,因为我从未使用过 mousevents,但现在正忙于研究,如果我使用的是 netbeans,将不胜感激。

标签: java mouseevent joptionpane right-click


【解决方案1】:

我想你在这里谈论的是JTabbedPane。我不知道如何检测选项卡上的右键单击,但至少我可以向您展示如何获得有关鼠标单击和选项卡更改的通知。

如果使用的右键单击JTabbedPane 中的某处得到通知,您可以使用:

tabbedPane.addMouseListener(new MouseAdapter()
{
    @Override
    public void mouseClicked(MouseEvent e)
    {
        if (e.getButton() == MouseEvent.BUTTON3)
            JOptionPane.showMessageDialog(
                null, "Clicked with right mouse button somewhere on the tabbed pane");
    }
});

您还可以在用户按下或释放鼠标按钮时立即收到通知。请参阅API documentation for MouseListener

要在标签更改时收到通知,您可以使用:

tabbedPane.addChangeListener(new ChangeListener()
{
    @Override
    public void stateChanged(ChangeEvent e)
    {
        JOptionPane.showMessageDialog(null, "Tab changed");
    }
});

也许您可以以某种方式将其结合起来。一个想法(虽然不是很漂亮)是:

  1. 注册用户按下鼠标右键
  2. 如果在释放鼠标按钮之前(或之后不久)发生stateChanged 事件,则显示您的消息对话框。

【讨论】:

    猜你喜欢
    • 2012-11-06
    • 1970-01-01
    • 2023-03-07
    • 2014-02-09
    • 2017-08-12
    • 2014-12-22
    • 2019-05-03
    • 1970-01-01
    相关资源
    最近更新 更多