画面を2つに分割したいので、EastセクションとWestセクションのあるBorderLayoutを使用しました。サイズ変更に問題がありましたが、最終的に、東と西のパネルでは幅が変更されず、北と南のパネルでは高さが変更されず、中央のパネルで両方が変更されることがわかりました。
ただし、サイズ変更時に幅と高さの両方を変更し、2つのパネルを並べて配置したいと思います。さまざまなレベルのネストを試して動作させましたが、BorderLayoutでは動作しないと思います。
これはデフォルトのレイアウトマネージャーにとっては簡単なようですが、別のレイアウト(BoxLayoutなど)を試して、目的を達成する必要があるかもしれません。
また、私が話している問題を再現するコードもあります(ウィンドウのサイズを変更してみてください)。
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main extends JFrame {
public static void main(String[] args) {
JFrame window = new Main();
window.setVisible(true);
}
public Main() {
JButton east = new JButton("East");
JButton west = new JButton("West");
JPanel content = new JPanel();
content.setLayout(new BorderLayout());
content.add(east, BorderLayout.EAST);
content.add(west, BorderLayout.WEST);
setContentPane(content);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
}
}
編集:私は2つの側面が等しくなることを望んでいません、およそ2:1は私が望む比率です。