JavaのsetSize()とsetPreferredSize()の違い
違いは
setSize() および
setPreferredSize()は少し複雑です。時々、
setSize() そして時々
setPreferredSize()です。一方が私たちのニーズを満たし、もう一方が満たさない場合があります。これら2つの方法の主な違いは?JFrameとJPanelにはどちらを使うべきですか?
コンポーネントに親がない場合は、
setSize()はコンポーネントのサイズを変更します。
setPreferredSize() と両方のメソッド
setMinimumSize() および
setMaximumSize()です。
setPreferredSize() コンポーネントに最適なサイズを選択すると、レイアウトマネージャはコンポーネントに適切なスペースを配置しようとします.
setSize() 親コンポーネントがレイアウトマネージャを使用している場合は何も行いません。
setSize() 効果がある は、JFrameやJWindowなどのトップレベルコンポーネントにあります。以下を呼び出す必要があります。
setSize() レイアウトマネージャのない親内部にコンポーネントがある場合.
So,
setPreferredSize() レイアウトマネージャがある場合は、そのほとんどが コンポーネントの最適サイズ、最小サイズ、最大サイズを回復します。使う
setSize() および setLocation を使用して、選択したレイアウトのパラメータに従ってこれらのコンポーネントを配置します。
例:
A BorderLayoutは、北部領域の境界を、指定された寸法と等しく設定しようとします。
setPreferredSize() その北部地域の。JFrameのサイズとlayout に従った他のコンポーネントのサイズ.
結論として:
- setPreferredSize() レイアウトがある場合は、コンポーネントの最適な位置と寸法を計算します。
- レイアウトがない場合は、setSize()