“新标签”作为TabPane JavaFX中的标签

时间:2017-06-07 15:00:19

标签: java user-interface javafx tabs

我找到了各种解决方案,关于如何在TabPane中添加按钮或TabPane中的覆盖,但这并不能让我满意。

我想要的是在最右边的标签旁边有一个按钮,例如我的浏览器提供: The button right beside the '"New Tab" as Tab in'

我现在尝试的不是使用此标签上的setGraph(Node)添加按钮,而是添加了一个标签,如果选中它将被视为不同。

    addTab = new Tab("+");
    addTab.setClosable(false);
    TabPane.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<Tab>() {
        @Override
        public void changed(ObservableValue<? extends Tab> ov, Tab oldValue, Tab newValue) {
            if (newValue == addTab) {
                groupTabPane.getSelectionModel().select(oldValue);
                DO_ADD_TAB();
            }
        }
    });

为了保持最正确的选项卡我在Tablist上有一个监听器,并且如果修改了列表,则总是删除/添加它(也许这可以更优雅地完成)

然而,我面临的问题是,如果存在Tab,TabPane总是需要选择。因此,在启动时始终执行DO_ADD_TAB()。我可以使用布尔变量来解决这个问题,但是选中了Tab,并且无法再次选择添加新的Tab。 TabPane.getSelectionModel().clearSelection()不起作用。

有人可以建议如何更优雅地添加这样一个按钮,或者如果只有这一个Tab,如何使TabPane不接受选择?

0 个答案:

没有答案