複数のコントロールを作成するクラスがありますが、クラス自体はコンポジットやウィジェットではありません。コントロールのレイアウトはすべてnew GridLayout(1, false)
です。私はクラスレベルGridLayout
を定義でき、すべてのコントロールに使用できるかどうかはわかりません。あなたは、私は3つの同一GridLayout
のインスタンスを作成し、ここで見たようここでのコード例異なるコントロール間でレイアウトインスタンスを共有することは安全ですか
public void createControl(Composite parent) {
parent.setLayout(new GridLayout(1, false));
Composite comp1 = new Composite(parent, SWT.NONE);
comp1.setLayout(new GridLayout(1, false);
Composite comp2 = new Composite(parent, SWT.NONE);
comp2.setLayout(new GridLayout(1, false);
// ... other stuff
}
です。これらのすべてのコントロールにクラスレベルのinsanceを使用できますか?セキュリティ上の問題やパフォーマンスの問題がありますか?
ところで、私は通常、私のコードでGridLayoutやその他のリソースを再利用しています。これまでは問題は発生していませんでした。しかし、共有リソースを変更すると、以前にそれを受け取ったすべてのコントロール/ウィジェットが変更されるとは思わないでください。 –