选项卡上的Java右键单击菜单

时间:2014-04-22 14:35:50

标签: java swing right-click

我一直在我的tabbedpane上玩鼠标听众等,但似乎无法进行任何操作。当您右键单击选项卡时,将显示尝试创建一个小菜单,该选项卡将为您提供关闭该选项卡的选项。有人能指出我正确的方向吗

tabbedPane.addMouseListener(new MouseAdapter() {

        @Override
        public void mouseClicked(MouseEvent e) 
        {
            if(SwingUtilities.isRightMouseButton(e))
            {
                System.out.print(tabbedPane.getSelectedIndex());
            }
        }
    });

1 个答案:

答案 0 :(得分:0)

tabbedPane.addMouseListener(new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent e) 
    {
        if(SwingUtilities.isRightMouseButton(e))
        {
            JPopupMenu menu = new JPopupMenu();
            JMenuItem closer = new JMenuItem(new AbstractAction("Close") {
                @Override
                public void actionPerformed(ActionEvent e) {
                    tabbedPane.removeTabAt(tabbedPane.getSelectedIndex());
                }
            });
            menu.add(closer);
            menu.show(tabbedPane, e.getX(), e.getY());
        }
    }
});

在选项卡组件上安装菜单可能会更好,可以通过tabbedPane.getTabComponentAt访问它。选项卡组件是呈现选项卡的文本标记的组件。如果你想在标签上添加一个X按钮,那就是你放置它的地方。