swingのレイアウトを上下中央に揃える方法は?

Swingのレイアウトで、BoxLayoutを使用することで上下の配置を実現することができます。

最初に、コンテナとしてJPanelを作成し、そのレイアウトマネージャーをBoxLayoutに設定します。

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

その後、JLabelやJTextFieldなど、上下に整列が必要なコンポーネントを作成し、コンテナに追加します。

JLabel label = new JLabel("Label");
JTextField textField = new JTextField(10);

panel.add(label);
panel.add(textField);

デフォルトでは、BoxLayoutはコンポーネントを垂直方向に中央揃えしますが、上下に揃えるには、コンポーネントの配置方法を設定することで実現できます。setAlignmentXメソッドを使用してコンポーネントの水平配置を設定し、setAlignmentYメソッドを使用してコンポーネントの垂直配置を設定します。

例えば、コンポーネントを垂直方向に整列させるためには、以下のコードを使用することができます:

label.setAlignmentY(Component.TOP_ALIGNMENT);
textField.setAlignmentY(Component.TOP_ALIGNMENT);

最後に、コンテナをウィンドウに追加して表示します。

JFrame frame = new JFrame();
frame.add(panel);
frame.pack();
frame.setVisible(true);

こうすることで、上下の配置が揃いました。

bannerAds