2011-06-16 10 views
0

私はいくつかのJDialogを持つGUIを持っています.2つまたは3つの "基本的な"大きなものがありますので、他のもの(小さなもの)。JDialogの作成方法(システム全体ではなく1つのアプリケーション内で)

私は、他のJDialogの「常に上に」を使用することが解決策になると思いますが、私が達成しようとしているものではありません。

お気軽に、ありがとう!

答えて

2

1.6を使用している場合は、おそらくModalityTypeModalExclusionTypeで遊んでみましょう。 modalitytypeとmodalexclusiontypeは1.6以降でのみ利用可能です。

+0

ModalityTypeはあるレベルのブロッキングを示しますが、私のダイアログはモードレスですが、問題はモダリティではありません。どんな場合でもダイアログがブロックされるべきではありません。 – Bastien

0

大きなJDialogのようなサウンドは、代わりにJFramesである必要があります。

別のオプション:JDesktopPaneを使用し、JInternalFrameを使用します。

第3のオプション:レイヤーペインを使用してアイテムの順序を制御します。

+0

** JFrames **を使用すると動作しません。私が作成する「小さな」ダイアログは、3つのJFrameのうちの1つにのみ関連付けられるため、他のものではなく、このJFrameの「常に上に」表示されます。 ** JDesktopPane **は有効なオプションですが、JDialogのみを使用するというアイデアを打ち破っています(これはJFrameを "包囲"しています)。 ** Layered Panes **、このように使うことはできないと思います。 JDialogをLayeredペインに追加することはできません(ただし、これはJDesktopPaneに最も近いものです)。いくつかの調査の後で、JDialogのZオーダーはJavaによってうまくサポートされていないように見えます。これは主にプラットフォームに依存しているためです。 – Bastien

関連する問題