GWT: Как мне создать TabsLayoutPanel с горизонтальными полосами прокрутки? - PullRequest
0 голосов
/ 14 декабря 2011

Я использую 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 голосов
/ 14 декабря 2011

Нет встроенного способа сделать это с 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();

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: не проверено

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...