0

我有一个 TabLayoutPanel。一开始,TabLayoutPanel 没有 Tab。用户可以在其中添加尽可能多的选项卡。他们还可以删除所有选项卡。

我的要求是:

每当 TabLayoutPanel 至少有 1 个选项卡时,我想设置 button enabled = true 。如果它没有选项卡,则设置按钮启用 = false。

       getView().getMainTabLayoutPanel().addAttachHandler(new AttachEvent.Handler(){

            @Override
            public void onAttachOrDetach(AttachEvent event) {

                int currentSelectedTabInt=getView().getMainTabLayoutPanel().getSelectedIndex();
                if(currentSelectedTabInt>-1){
                    getView().getMyButton().setEnabled(true);

                }
            }

        });

上面的代码不起作用。

那么如何在 Gwt 中的 TabLayoutPanel 中插入或移除选项卡时触发事件?

4

2 回答 2

1

您可以在侦听按钮AddTabButtonRemoveTabButton事件的处理程序上设置 button enabled = true 或 false 。您必须在那里检查可见/存在的选项卡数量。

myTabLayoutPanel.getWidgetCount(); //Returns the number of tabs and widgets.
于 2013-10-09T06:21:17.300 回答
0

您可以创建一个子类TabLayoutPanel和覆盖doAttachChildrendoDetachChildren。您捕获的事件与选项卡面板本身的附加/分离有关,而不是其子项。

于 2013-10-08T12:34:45.287 回答