ウィンドウに合わせて JList と JTextArea のサイズを変更したいのですが、JPanel は中央にとどまります。
1 に答える
2
LogView クラスは JPanel を拡張するため、変更しない限り、JPanel のデフォルト レイアウトである FlowLayout を使用します。FlowLayout を使用するコンテナーに保持されているコンポーネントは、コンテナーのサイズが変更されてもサイズが変更されないため、この動作が必要な場合は、コンポーネント リスナーは必要ありません。LogView JPanel のレイアウト マネージャーを BorderLayout に変更するだけで済みます。または、保持されているコンポーネントを展開できる同様のもの、それだけです。1 行のコード:
public LogView(final JFrame contentPane) {
// .......
setLayout(new BorderLayout()); // add this, that's it
add(mainPanel);
}
もう 1 つのオプションは、mainPanel がまったく必要ないように思われるので削除し、LogView オブジェクトのレイアウトを GridBagLayout に設定し、コンポーネントを LogView オブジェクトに直接追加することです。
于 2012-02-09T01:24:17.573 に答える