2010-09-21 3 views
4

Я хочу поставить некоторый якорь внутри корпуса вкладки с двумя вкладками. Но мои якоря не видны. Код выглядит следующим образомПанель вкладок GWT UIBinder

<g:TabLayoutPanel ui:field="lhsTabPanel" barUnit="PX" barHeight="60"> 
    <g:tab> 
     <g:header>Analysis</g:header> 
     <g:FlowPanel> 
     <g:Anchor ui:field='personalInformation'>Personal Information</g:Anchor> 
     </g:FlowPanel> 
    </g:tab> 
    <g:tab> 
     <g:header>Comparison</g:header> 
     <g:FlowPanel ui:field="comparisonContent"/>      
    </g:tab>       
</g:TabLayoutPanel> 

Вкладка персональной информации не виден

ответ

10

TabLayoutPanels должен быть добавлен другими виджеты, которые реализуют ProvidesResize. Например, если вы добавляете эту TabLayoutPanel в RootPanel вместо RootLayoutPanel, вы не сможете увидеть TabLayoutPanel, потому что RootPanel не реализует ProvidesResize.

Вы не можете видеть содержимое вкладок, потому что TabLayoutPanel не знает, насколько он большой. Попробуйте добавить его к некоторому потомку LayoutPanel и установить его размер явно с помощью setWidgetLeftRight и связанных функций.

Отъезд http://code.google.com/webtoolkit/doc/latest/DevGuideUiPanels.html#LayoutPanels для получения дополнительной информации.

+0

Спасибо. Это помогло. Я реализовал решение по-другому. Я предоставил ширину и высоту g: TabLayoutPanel как lalit

+0

Рад, что у вас есть это работа - убедитесь, что размер пересчитывается при изменении размера браузера и т. д. Я некоторое время боролся с этой проблемой и в итоге перестроил свой код, чтобы использовать LayoutPanels для большей части базовой архитектуры. Теперь я их люблю! ;) –

 Смежные вопросы

  • Нет связанных вопросов^_^