2011-02-13 4 views
0

次の簡単な設定ページではClassCastExceptionで失敗します。Eclipseの設定ページでGridLayout以外を使用することはできますか?

@Override 
protected Control createContents(Composite parent) { 
    Composite container = new Composite(parent, SWT.NONE); 
    container.setLayout(new FillLayout()); 
    List list = new List(container, SWT.NONE); 
    return container; 
} 

同じコードは、通常のSWTアプリケーションで正常に動作します。 FillLayoutGridLayoutに置き換えても動作しますが、それは私を満足させるものではありません。 Eclipseの設定ページでFillLayoutまたはRowLayoutを使用する方法はありますか?

編集: 例を準備する際には十分注意しませんでした。上記のコードは実際に正常に動作します。私のコードでは、コンテナ(!)ではなくリストを返しました。なんらかの理由で、それは通常のSWTで機能しましたが、実際にはナンセンスです。

container.setLayoutData(new GridData(...)); 

そして、それはトリックをしない場合、その後のGridLayoutとし、そのFillOut内で最初に一つの容器を追加する作業をdefinatedly必要があります。

答えて

0

は、人はこれを試してみることです多分2つのトリック、なんとかなるはずです。

私は、提供されたコードがうまくいくと仮定していましたが、そのレイアウトデータを設定しようとしました。

+0

申し訳ありませんが、上記の私の編集をお読みください。あなたはそれがうまくいくはずだと言ったので、私はあなたの答えを受け入れるでしょう、あなたは正しいです:) – futlib

関連する問題