TabItem中的ScrolledComposite

时间:2016-03-09 13:58:08

标签: java scroll tabs widget swt

我正在尝试使用TabItemTabFolder内创建可滚动的ScrolledComposite。我的窗口有两个选项卡,第二个选项卡(tab2)应该有滚动条并且可以滚动。

这是我到目前为止所做的:

@Override
protected Control createContents(Composite parent) {
    Control control = super.createContents(parent);

    TabFolder folder = new TabFolder((Composite) dialogArea, SWT.TOP);
    TabItem tab1 = new TabItem(folder, SWT.NONE);
    tab1.setText("Tab One");
    Composite c1 = createMyFirstComposite(folder);
    tab1.setControl(c1);
    TabItem tab2 = new TabItem(folder, SWT.NONE);
    tab2.setText("Tab Two");

    ScrolledComposite sc = new ScrolledComposite(folder, SWT.BORDER
            | SWT.H_SCROLL | SWT.V_SCROLL);

    Composite c2 = (Composite) createMySecondComposite(folder);
    sc.setContent(c2);
    sc.setExpandHorizontal(true);
    sc.setExpandVertical(true);
    sc.setMinSize(c2.computeSize(SWT.DEFAULT, SWT.DEFAULT));
    sc.setShowFocusedControl(true);
    tab2.setControl(c2);

    return control;
}

不幸的是tab2的内容不可滚动且没有滚动条。我做错了什么?

1 个答案:

答案 0 :(得分:0)

标签2的setControl应该是滚动的合成,所以:

tab2.setControl(sc);