我在CTabFolder中有一个CTabItem,我希望在我的标签项内部进行水平和垂直滚动。以下是我的代码:
composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout(4, false));
mainTabFolder = new CTabFolder(composite, SWT.BORDER );
GridData mainTabGD = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
mainTabGD.widthHint = 550;
mainTabGD.heightHint = 350;
mainTabFolder.setLayoutData(mainTabGD);
generalTabItem = new CTabItem(mainTabFolder, SWT.NONE);
generalTabItem.setText("General");
ScrolledComposite sc = new ScrolledComposite(mainTabFolder, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL );
generalTabComposite = new Composite(sc, SWT.NONE);
generalTabComposite.setLayout(new GridLayout(4, false));
// I have created some SWT widgets here
generalTabItem.setControl(sc);
sc.setContent(generalTabComposite);
sc.setExpandHorizontal(true);
sc.setExpandVertical(true);
sc.setMinSize(generalTabComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT));
上面的代码给了我一个垂直滚动,但我无法实现水平滚动。 请告诉我哪里出错了。
由于
答案 0 :(得分:0)
您在最后一行代码中告诉ScrolledComposite
它的最小尺寸:
sc.setMinSize(generalTabComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT));
如果复合材料的尺寸大于此值,则不会显示滚动条。