GWT TabLayoutPanel ie7 первая вкладка свернута

У меня есть TabLayoutPanel, к которому я получаю доступ с ie7. При первом просмотре вкладки она свернута ~32px x 32px. Если я выберу вторую вкладку, область содержимого заполнится, и я смогу вернуться на первую вкладку, и она будет выглядеть правильно. Я использую и все предки tablayoutpanel являются некой формой layoutpanel. Работает в ie8 и хром. Есть идеи?

Обновление: я заметил, что изменение размера не работает для панели вкладок. Изменение размера панели происходит только при переключении между вкладками. Когда я изменяю размер окна браузера, панель вкладок остается того же размера. Когда я меняю вкладки, панель вкладок корректно заполняет браузер.

4 ответа

Вы случайно добавляете вкладки в TabLayoutPanel перед тем, как добавить их на страницу?

Я заметил, что если вы добавите TabLayoutPanel на страницу, а затем добавите вкладки, эта проблема исчезнет.

Я не вижу, как исправить проблему 4596 (во всяком случае, не в 2.3.0), я вижу точно такой же эффект в ie7.

К счастью, вот обходной путь, который вы можете добавить в свое представление или любой другой композит, который вы используете. Это работает для меня, однако обратите внимание, что я указываю размер TabLayoutPanel, так как он находится в середине HTMLPanel.

@Override
protected void onAttach() {
  super.onAttach();
  tabPanel.forceLayout();
}

Решение Гийома почти сработало для меня, за исключением того, что мне пришлось запустить его во время следующего цикла событий (не спрашивайте меня, почему):

Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand()
{
  public void execute()
  {
    tabPanel.forceLayout();
  }
});

У меня похожая проблема. Я явно называю

tabPanel.selectTab(0);

и затем в первый раз, когда я посещаю свой пользовательский интерфейс с панелью с вкладками, компоненты отображаются правильно.

Другие вопросы по тегам