Странность GWT DockLayoutPanel

Я использую DockLayoutPanel для своего приложения. Он отлично работал, когда у меня были только виджеты на севере, западе и востоке. Когда я добавил еще один к югу, он оказался не так, как я ожидал - это больше центр, чем юг.

    private DockLayoutPanel mainPanel = new DockLayoutPanel(Unit.EM);
    mainPanel.addNorth(topPanel, 15);
    mainPanel.addWest(resultsGrid, 65);
    mainPanel.addEast(wcFlexTable, 35);
    mainPanel.addSouth(pager, 10);


    // Associate the Main panel with the HTML host page. 
    RootLayoutPanel.get().setStylePrimaryName("rootLayoutPanel");
    RootLayoutPanel.get().add(mainPanel);

Он отображается, как показано ниже - вы можете увидеть элемент пейджера, а не там, где я его ожидал. введите описание изображения здесь


person betseyb    schedule 08.04.2015    source источник


Ответы (2)


Учитывая используемые вами единицы, мне кажется, что южная панель расположена правильно, а пейджер находится в верхней части южной панели, положение по умолчанию для элементов в их контейнерах.

person Boris Brudnoy    schedule 08.04.2015
comment
Однако я сбит с толку - это не ниже окон Востока и Запада; дно кажется даже с ними. Разве это не должно быть под ними? Если я неправильно понимаю, не могли бы вы подсказать, как я могу изменить свои настройки? - person betseyb; 09.04.2015
comment
Это вполне ожидаемо, учитывая порядок, в котором вы добавляете панели. Попробуйте добавить южную панель после севера. - person Boris Brudnoy; 09.04.2015

Оказалось, что проблема в том, что я добавил элемент Юг после Востока и Запада. Если переместить его перед Востоком и Западом, все будет отображаться так, как ожидалось.

person betseyb    schedule 09.04.2015