如何设置静态宽度以在SWT中查看

时间:2011-07-28 14:35:50

标签: java swt

如何在透视图中配置静态视图宽度?

我希望左侧的TreeViewer具有静态宽度,而第二个视图(ViewPart)则希望展开水平扩展。我有这个,使用比率,我不想要:

public class PerspectivaEkomaj implements IPerspectiveFactory {

    @Override
    public void createInitialLayout( IPageLayout layout ) {

        String editorArea = layout.getEditorArea();
        layout.setEditorAreaVisible( false );
        layout.addView( EkomajTreeView.RCP_ID, IPageLayout.LEFT, 0.25f, editorArea );
        layout.getViewLayout( EkomajTreeView.RCP_ID ).setCloseable( false );

        layout.addStandaloneView( MajetekView.RCP_ID, false, IPageLayout.TOP, 0.75f, editorArea );
        layout.addStandaloneViewPlaceholder( MajetekDMView.RCP_ID, IPageLayout.TOP, 0.75f, editorArea, false );
...

请告诉我是否存在一些解决方案或类似的类(与SWT兼容)允许它。

1 个答案:

答案 0 :(得分:3)

如果要控制特定工作台部件(视图或编辑器)的大小,请查看org.eclipse.ui.ISizeProvider接口。如果工作台部件可以适应ISizeProvider,那么这将用于计算结果尺寸。有关相关适配器代码,请参阅org.eclipse.ui.internal.WorkbenchPartReference.computePreferredSize(...)