質問

2つのJPanelがあります(これらをPanel1とPanel2と呼びましょう)。これらのパネルは同じ幅ですが、高さが異なります。

これらのJPanelを1つの大きなJPanelに配置し(Panel0と呼びます)、それらを重ねます(Panel0のレイアウトをGridLayout(0,1)に設定することにしました)。

問題は、ネストされたパネル(パネル1と2)の両方が、私が設定したsetPreferredDimensionとsetDimensionの代わりに、同じ寸法(2つの中で最大のもの)になることです。

申し訳ありませんが、実際にコードを提供することはできません(パネルには多くのがらくたが追加されており、作業関連のものがすべてです)。何かアドバイス?ありがとう!

役に立ちましたか?

解決

GridLayout は、すべてのコンポーネントを強制的に同じサイズにします。それがグリッドと呼ばれる理由です。

パネルは2つしかないので、 NORTH CENTER に1つのパネルを備えた BorderLayout を使用することをお勧めします。サイズ変更を許可する場合、 CENTER のサイズは、余分な縦方向のスペースを埋めるために拡張されるため、注意してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top