1

JavaでGUIプログラムを書いています。

( )を挿入したJPanel呼び出しがあります。の右成分と左成分を設定しました。& . 下向きのパネル ( ) に背景画像を設定し、背景画像が見えるように左右のコンポーネントを透明にしたいと考えています。これはJavaで可能ですか?これが可能であれば、そのメソッドを使用して透明にすることはできますか?jpanel1JSplitpanejSplitPane1jSplitPane1jpanel2jpanel3jpanel1JSplitPaneJTreeJSplitpane

4

2 に答える 2

2

次のように呼び出すだけですsetOpaque(boolean)

于 2011-10-19T11:01:53.803 に答える
0

L&Fによって異なります。MacOS 上の AquaL&F は setOpaque(false) を尊重しますが、たとえば Nimbus はそれを気にしないようです。透明な仕切りを強制するには、JSplitPane の UI 定義でオーバーライドする必要があります

 jSplitPane.setUI(new BasicSplitPaneUI(){
            @Override
            public BasicSplitPaneDivider createDefaultDivider() {
                return new BasicSplitPaneDivider(this){
                    @Override
                    public void paint(Graphics g) {
                    }
                };
            }
        });

潜在的な欠点は、このアプローチがこのコンポーネントの L&F をオーバーライドするため、他の L&F テーマ要素が取り除かれる可能性があることです。

于 2014-09-03T06:43:32.270 に答える