2017-02-07 13 views
-1

実際にはthisについての質問です。これを現在どのようにサイズ変更するのですか?これを使用してJPanelのサイズを変更することはできましたが、テーブルやスクロールペインのサイズを変更する方法が見つかりません。私は10列あり、テーブルは同じサイズのままです。事前にサイズ変更JTable/Scrollpane

おかげ

+0

オーバーライド 'getPreferredScrollableViewportSize() '、(http://stackoverflow.com/search?tab=votes&q=%5bswing%5d%20%5bjtable%5d%20getPreferredScrollableViewportSize)。 – trashgod

答えて

1

私は私のJPanelのサイズを変更することができましたが、私は、テーブルやスクロールペインのサイズを変更する方法を見つけることができません。

問題は、JPanelがFlowLayoutを使用していることです。 FlowLayoutは、パネルに追加されたコンポーネントの優先サイズを考慮します。したがって、サンプルコードでは、テーブルはデフォルトの優先サイズで表示されます。

ソリューションのカップル:

  1. パネルの必要はありません。スクロールペインをフレームに直接追加するだけです。テーブルは、フレームサイズが変わると拡大/縮小します。
  2. パネルのレイアウトマネージャを、追加されたコンポーネントが利用可能な領域を埋めるように大きくなるように変更します。テーブルは必要に応じて拡大/縮小します。
  3. JTablegetPreferredScrollableViewportSize(...)メソッドをオーバーライドします。これは、テーブルのデフォルトの優先サイズを上書きします。テーブルは、使用されるレイアウトマネージャに応じて拡大/縮小することがあります。 [例]を