GWT:如何使用水平滚动条创建TabsLayoutPanel?

时间:2011-12-13 20:36:25

标签: gwt

我正在使用GWT 2.4。我正在尝试创建一个包含多个选项卡的选项卡面板,这些选项卡很多,有时它们会超出分配的水平边界。如何显示水平滚动条?以下是我现在正在创建标签面板的方法......

        tabsPanel = new TabLayoutPanel(BAR_HEIGHT_IN_EM, Style.Unit.EM);

        final List<ScrollPanel> tabs = new ArrayList<ScrollPanel>();
        for (final Node tabNode : documentNode.getChildren()) {

            // Get the tab's child widgets and add them
            // into the tab panel.
            final ScrollPanel childpanel = new ScrollPanel();
            childpanel.setHeight(SCROLL_PANEL_HEIGHT_PCT);
            ...
            tabsPanel.add(childpanel, tabName);
        }   // for

        tabsPanel.setWidth("100%");
        tabsPanel.setHeight("100%");

正如你所看到的,我尝试了width =“100%”,但是没有滚动面板可以让我看到多余的标签。

谢谢, - 戴夫

1 个答案:

答案 0 :(得分:0)

使用TabLayoutPanel没有内置方法可以执行此操作,但查看代码可以执行此操作:

SimplePanel tab = (SimplePanel) getTabWidget(0).getParent();
FlowPanel tabBar = (FlowPanel) tab.getParent();
LayoutPanel container = (LayoutPanel) tabBar.getParent();

Element tabBarContainerLayer = container.getWidgetContainerElement(tabBar);
tabBarContainerLayer.getStyle().clearOverflowX();

免责声明:未经测试