2 ScrolledComposite рядом. - PullRequest
       29

2 ScrolledComposite рядом.

0 голосов
/ 11 августа 2011

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

Label 1             Label 2

Scrollable 1        Scrollable 2

Теперь я застрял в том, как боксировать.

Это кажется правильным, но теперь я не могу правильно настроить макеты и слушателей.

  • Композит A
    • Композит A1
      • Метка 1
      • прокручиваемый S1
    • композитный A2
      • метка 2
      • прокручиваемый S2

A1 должен установить минимальный размер прокручиваемого S1, верно?Но кто устанавливает размер S1 так, чтобы он заполнил лишнее пространство?Примеры, которые я нашел, не сработали.

Кстати, помещение всего в GridLayout также не сработало, так как я не мог получить размер ячейки.

Ответы [ 2 ]

0 голосов
/ 11 августа 2011

Посмотрите на фрагмент SWT для " фиксированная первая колонка с горизонтальной прокруткой оставшихся столбцов " - хотя этот пример для Tables, его легко можно перевести на ScrolledComposites.

0 голосов
/ 11 августа 2011

Кстати, положить все в GridLayout тоже не получилось, так как я не смог получить размер ячейки.

Зачем вам нужен размер ячейки? Просто установите GridLayoutdata для S1 и S2, чтобы заполнить ячейку. Проще всего использовать GridLayoutFactory:

import org.eclipse.jface.layout.GridLayoutFactory;

...
GridLayoutFactory.fillDefaults().applyTo(s1);
GridLayoutFactory.fillDefaults().applyTo(s2);
...

ОБНОВЛЕНИЕ: см. Примеры на http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/custom/ScrolledComposite.html

Допустим, содержимое s1 является Composite c1. Тогда вы используете s1.setMinSize(c1.computeSize(SWT.DEFAULT, SWT.DEFAULT)). Размер A1 не имеет значения.

...