2013-03-07 4 views
1

Я пытаюсь создать Composite содержащий FlowLayout внутри ScrolledComposite, так что Composite наследует свою ширину от ScrolledComposite, но динамически растет. Я искал некоторые фрагменты, но я не заставляю их работать; Я могу только увеличить его ширину, что нежелательно.Как получить композит, содержащий FlowLayout внутри ScrolledComposite, для вертикального и горизонтального?

Что я пытаюсь сделать, так это создать представление, содержащее кучу миниатюр, чтобы заполнить окно/окружающий композит по ширине и прокрутить по высоте.

ответ

0

Вам нужно будет переопределить метод computeSize для составного элемента или FillLayout, чтобы всегда сообщать о заданном значении widthHint, если, возможно, подсказка ширины меньше ширины одного эскиза, и в этом случае вам может потребоваться показать горизонтальную прокрутку) ,

Возможно также, что вы добавите слушателя изменения размера в ScrollComposite и продолжаете звонить ScrollComposite#setMinSize(), чтобы гарантировать, что композитный внутри растет только вертикально.

Также вы используете правильный тип на FillLayout?