2011-07-28 15 views
1

どのようにパースペクティブな視野幅を設定することができますか?SWTで表示する静的な幅を設定するには

私は静的な幅と2番目のビュー(ViewPart)でTreeViewerを持っていたいと思いますhorizo​​ntalalyを展開します。

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); 
... 

Plsはそれを許可(SWTとの互換性)、いくつかの回避策または類似のクラスを存在するなら、私が知っている:私は私が望んでいないことを、この、魔女使用比率を、持っています。

答えて

3

特定のワークベンチ部品(ビューまたはエディタ)のサイズを制御する場合は、org.eclipse.ui.ISizeProviderインターフェイスを参照してください。ワークベンチ部品をISizeProviderに適合させることができれば、これを使用して結果のサイズを計算します。関連するアダプタコードについては、org.eclipse.ui.internal.WorkbenchPartReference.computePreferredSize(...)を参照してください。

+0

この継ぎ目が良いことに感謝します。私はtreeViewerクラスのISizeProviderインターフェイスを実装しています。それは私に2つの方法を教えてくれます。 getSizeFlags(私は0を返す)とcomputePreferredSize(私は正確なピクセル幅を返す、それは私のために300)。そして、遠近法で浮動小数点を0.0fに設定する(静的サイズは最小で、サイズが大きい場合は浮動小数点で拡大表示する) – Perlos

関連する問題