Возможно, я не искал правильный путь, но я не могу выяснить ни за что в жизни, как центрировать элемент с помощью Панелей Расположения GWT.
Я использую UiBinder, и я попробовал все панели, которые реализуют HasVerticalAlignment (DockPanel, HorizontalPanel, VerticalPanel). Ни один из них, кажется, не оказывает влияния от установки выравнивания по вертикали (или даже горизонтальный). Я удостоверился, что они берут 100% шириной и высота, осмотрел получающееся расположение DOM от моего браузера, и ничто, кажется, не изменяется от тех свойств.
Подходящее извлечение UiBinder (с дополнительными docklayout опущенными элементами):
<g:DockLayoutPanel>
<g:center>
<g:HorizontalPanel width="100%" height="100%" >
<g:FlexTable ui:field="homeData" />
</g:HorizontalPanel>
</g:center>
</g:DockLayoutPanel>
Быстрая и грязная фиксация, которую я выяснил, должна создать мой собственный виджет "CenterPanel", который в основном является оберткой вокруг HTMLPanel с HTML-таблицей с valign = "средняя" ячейка. Однако это в основном чувствует себя подобно возврату к классической середине расположения CSS центрирование проблем. Конечно, GWT имеет что-то, чтобы сделать это, что я полностью пропустил?
Вы пробовали установить ширину
меньше 100% ... я чувствую, что ширина HorizontalPanel
становится 100% ... поэтому она занимает всю DockLayoutPanel
и, таким образом, FlexTable
может выравниваться по левому краю.