3

シェル(アプリケーション)全体ではなく、ビューにモーダルなダイアログを作成する方法はありますか?たとえば、AというビューがBという別のビューに重なっている場合、ビューAに対してのみモーダルなダイアログを開きたいので、ビューBに切り替えると、ダイアログとビューAは次のようにカバーされます。ビューB.通常の方法ではない場合でも、とにかくこれを行うことができますか?

ありがとう!

4

2 に答える 2

3

実装はそれほど簡単ではないと思います。1つの可能性は、ビューAでモーダルダイアログを使用する代わりに、TabFolderを使用することです。次に、代わりに新しいタブでダイアログの内容を開き、閉じるまでこのタブを強制的に上に表示することができます。これは、必要な動作と似ています。

これにより、ビューBからビューAに何かをドラッグアンドドロップすることもできます。

于 2009-04-29T05:05:01.877 に答える
1

ワークベンチの復元の全体的な考え方は、ワークベンチを以前の状態に戻すことです。細部をすべて復元する必要はありませんが、ビューを空白のままにしたくない場合は、元の状態に復元する必要があります。つまり、ビューBは、ワークベンチを閉じたときと同じ入力で復元する必要があります。ビューAを閉じた後もビューBとその入力が存在し続ける場合は、ビューAが存在するかどうかに関係なく、ビューBとその入力を復元できます。確かに、ワークベンチの復元中にダイアログボックスを開いてはいけません。それは良いUIデザインではないでしょう。Eclipseは、ビューの入力を保存できる非常に使いやすいmementoフレームワークを提供します。これを使って。

mementosに慣れていない場合は、たとえばhttp://wiki.eclipse.org/FAQ_How_does_a_view_persist_its_state_between_sessions%3Fを参照してください。

于 2009-05-07T04:25:45.993 に答える