我有一个使用SWT构建的应用程序。在Mac上测试时,除非应用程序已完全屏蔽,否则选项卡文件夹中的选项卡项目会在显示屏幕的边缘运行。有没有办法阻止这种情况发生?我无法通过谷歌搜索找到任何内容。
如果是SWT错误,最好的方法是什么?我在考虑将标签文件夹放在可滚动的复合材料中,这样标签项目仍然可以在较小的显示中查看。
由于
public FeedMonitorComposite(Composite parent, int style) {
super(parent, style);
setLayout(new FillLayout(SWT.HORIZONTAL));
Composite cmpMain = new Composite(this, SWT.NONE);
GridLayout gl_cmpMain = new GridLayout(1, false);
gl_cmpMain.marginHeight = 0;
gl_cmpMain.marginWidth = 0;
cmpMain.setLayout(gl_cmpMain);
cmpSummaries = new Composite(cmpMain, SWT.NONE);
cmpSummaries.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 1, 1));
cmpSummaries.setLayout(new FillLayout(SWT.VERTICAL));
Composite cmpTabs = new Composite(cmpMain, SWT.NONE);
cmpTabs.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
cmpTabs.setLayout(new FillLayout(SWT.HORIZONTAL));
queueTabFolder = new TabFolder(cmpTabs, SWT.NONE);
}
private void makeTab(String description, FeedEventsFilter filter) {
TabItem tabItem = new TabItem(view.getTabFolder(), SWT.NONE);
tabItem.setText(description);
Composite composite = new Composite(view.getTabFolder(), SWT.NONE);
composite.setLayout(new FillLayout());
tabItem.setControl(composite);
FeedEventsTabComposite tabView = new FeedEventsTabComposite(composite, SWT.NONE);
FeedEventsTabController controller = new FeedEventsTabController(context, filter, this, tabItem, tabView);
tabControllers.add(controller);
答案 0 :(得分:0)
我遇到了同样的问题。
我找到的唯一解决方案是CTabFolder(org.eclipse.swt.custom.CTabFolder)
使用TabFolder
。{/ p>