GWT DockLayoutPanel ScrollPanel внутри DecoratorPanel в качестве центра

#java #gwt #layout

#java #gwt #макет

Вопрос:

У меня мой макет определен следующим образом:

 <g:DockLayoutPanel unit="PX">
    <g:north size="100">
        <g:Label>top</g:Label>
    </g:north>
    <g:center>
        <!-- <g:DecoratorPanel> -->
        <g:ScrollPanel>
            <g:VerticalPanel>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
                <g:Label>center</g:Label>
            </g:VerticalPanel>
        </g:ScrollPanel>
        <!-- </g:DecoratorPanel> -->
    </g:center>
    <g:south size="100">
        <g:Label>bottom</g:Label>
    </g:south>  
</g:DockLayoutPanel>
  

Работает нормально, но если я оберну ScrollPanel с DecoratorPanel помощью, прокрутка никогда не работает. В чем проблема и как я должен ее исправить?

Ответ №1:

DecoratorPanel отображается как a <table> , поэтому вы не должны использовать его как прямого дочернего <g:center> тега.

Что вы пытаетесь сделать?

Комментарии:

1. Я пытаюсь обернуть свою панель прокрутки причудливой рамкой.

Ответ №2:

Я попробовал ваш пример, прокрутка работает) Но полоса прокрутки расположена у правого края окна.

Если вы этого не видите, попробуйте добавить или установить ширину ScrollPanel.