1

私はかなり長い間この問題を抱えていて、インターネット上のどこにも解決策を見つけることができませんでした.

メイン フレームとして JDialog があり、ウィンドウの透明度を変更できるようにする必要があります。通常、setUndecorated(true) を呼び出しても問題はありませんが、そうしたくありません。システムのルック アンド フィールの下の上部にタイトル バーを表示したいと考えています。

興味深い点は、私の Mac では、JDialog がまだ「装飾」されているにもかかわらず、透明度の変更がシステムのルック アンド フィールで問題なく機能することです。

これが私の JDialog の画像です。私が何を扱っているかがわかります。

画像

システムのルック アンド フィールを使用する必要がありますが、ウィンドウの透明度も変更できる必要があります。

試してみると、Windowsで次の例外が発生します。

「スレッド「AWT-EventQueue-0」で例外 java.awt.IllegalComponentStateException: ダイアログが装飾されています」

装飾なしに設定すると、オプションではない上部のタイトル バーが失われます。誰もこれを回避する方法を知っていますか?

4

0 に答える 0