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);
и затем в первый раз, когда я посещаю свой пользовательский интерфейс с панелью с вкладками, компоненты отображаются правильно.