2013-06-20 6 views
0

Как я могу сделать эту сетку:Изменение размера GXT сетки

enter image description here Когда я двигаю SplitPanel сетки динамически расширяется вместе с колоннами. сетки в картине я сделал вручную, добавив ширина: 100% Если я использую это:

grid.setWidth("100%"); 
grid.setHeight("100%"); 

Это не работает, я получаю это:

enter image description here

Я нашел это: click

Но GXT 3. * не FitLayout

Любые идеи?

ответ

2

В gxt 3 нет подходящего макета, потому что в случаях, где это необходимо, не требуется никакого макета! Любой контейнер, который принимает только одного ребенка (или только один ребенок в определенной позиции, такой как NorthSouthContainer или BorderLayoutContainer), всегда будет располагать его до свободного места. Все макеты покрыты по http://www.sencha.com/learn/sencha-gxt-2x-to-300-migration-guide/#h.ys84m7uvflvk, описывая, что было в 2.x и его параллель в 3.

Это говорит о том, что класс SplitPanel устарел, так как и он, и все подклассы работают только в режиме quirks. Напротив, GXT 3 работает только в стандартном режиме. Класс SplitLayoutPanel мог бы работать вместо этого, хотя он использует интерфейс RequiresResize, чтобы определить, как можно изменить размер дочернего элемента. Виджеты GXT не все используют это, хотя в контейнерах: если вы используете SplitLayoutPanel, можно обернуть вашу сетку в SimpleContainer, чтобы контейнер получал детали от своего родителя (панель раскладки макета) и пропускал новые данные о размере в сетке.

Если вы больше знакомы с GXT 2, а не на любой из вышеперечисленных, посмотрите на BorderLayoutContainer - вы сможете добавить Grid прямо к нему, так как контейнер макета границы знает, к сетке, а не сообщая, что размер изменился, и он должен измерять себя.

Последнее примечание - с вашего скриншота корневой виджет не рисует в верхнем левом углу окна браузера, как он должен. Две основные причины этого: либо вам не хватает reset.css (см. setup.txt в zip-файле gxt), либо вы используете тему GWT Clean, которая добавляет маржу в этой области. Вы можете найти приложение выглядит лучше, без дополнительного места, где браузер заканчивается там, где начинается приложение.

Смежные вопросы