2011-06-23 8 views
1

新しい子コントロールが作成された場合にCompositeに通知するにはどうすればよいですか?SWT:コンポジットに新しい子があることを通知します。

理由:デフォルトでは、StackLayoutの子は表示されません。 StackLayoutCompositeに追加された最初のコントロール(StackLayoutCompositeと他のいくつかのヘルパーメソッド)がデフォルトで表示されるようにしたいと思います。現在、私はStackLayoutlayoutメソッドをオーバーライドして解決しましたが、これは私の目には醜いものです。

答えて

1

あなたは新しい子および関連するレイアウトデータに基づいて再レイアウト親Compositeしたい場合は、ウィジェット階層があったことを親に通知を受けたい場合は、単にcomposite.layout(true); ...

を使用変更された場合、あなたは運が悪いです。最も近いのは、SWTフィルターをディスプレイに追加し、以前に未知の子供のためにSWT.Resizeイベントを待つことです。これはプロジェクトですが、私はあなたが処分を監視する必要があるので、コードが少し醜いことを認めなければなりません。

関連する問題