Окно Smart-Gwt не перерисовывает полосы прокрутки при изменении дочернего виджета? - PullRequest
1 голос
/ 26 января 2010

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

Тем не менее, полосы прокрутки появляются, если пользователь вручную изменяет размер окна (то есть даже путем изменения фиктивного размера или изменения на 1px).

Этот вопрос очень похож на этот: Как сделать так, чтобы размер окна gwt-ext не изменялся при изменении его содержимого?

Однако решение предлагает использовать setAutoScroll (true), который больше не является методом окна.

Есть идеи о подобном методе или простом обходном пути?

Приветствия

1 Ответ

1 голос
/ 26 января 2010

Если вы используете компоненты SmartGWT для содержимого, окно SmartGWT автоматически ответит и покажет полосы прокрутки.

Поскольку вы используете что-то другое, SmartGWT не получает уведомление о том, что компоненты изменили размер, однако вы можете поместить все компоненты в контейнер SmartGWT Canvas и вызывать AdjustForContent () всякий раз, когда изменяется размер компонентов.

http://www.smartclient.com/smartgwtee/javadoc/com/smartgwt/client/widgets/Canvas.html#adjustForContent%28boolean%29

Обратите внимание, что это одна из многих причин, почему мы рекомендуем избегать смешивания различных наборов компонентов (например, встроенных виджетов GWT и виджетов SmartGWT) - другие проблемы включают в себя поддержание порядка вкладок, идеальное расположение пикселей и координацию модальности. Более подробно объяснил здесь:

http://forums.smartclient.com/showthread.php?t=8159#aMix

...