我想创建一个鼠标事件,允许我右键单击选项卡,选择并删除它。如何在右键单击选项卡名称后启用JOptionPane()
?
我无法尝试自己,因为我不知道......
答案 0 :(得分:0)
我想你在这里谈论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");
}
});
也许你可以以某种方式结合这一点。一个想法(虽然不是很漂亮)将是:
stateChanged
事件,请显示消息对话框。