- BoxLayoutを使用する方法:
import javax.swing.*;
import java.awt.*;
public class VerticalBoxLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("垂直配置の例");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
panel.add(new JButton("ボタン1"));
panel.add(new JButton("ボタン2"));
panel.add(new JButton("ボタン3"));
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);
}
}
- GridBagLayoutを使用する方法:
import javax.swing.*;
import java.awt.*;
public class VerticalGridBagLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("垂直配置の例");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = GridBagConstraints.RELATIVE;
gbc.anchor = GridBagConstraints.NORTH;
gbc.insets = new Insets(5, 5, 5, 5);
panel.add(new JButton("ボタン1"), gbc);
panel.add(new JButton("ボタン2"), gbc);
panel.add(new JButton("ボタン3"), gbc);
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);
}
}
- GroupLayoutを使用する方法:
import javax.swing.*;
public class VerticalGroupLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("垂直配置の例");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GroupLayout layout = new GroupLayout(frame.getContentPane());
frame.getContentPane().setLayout(layout);
layout.setAutoCreateGaps(true);
layout.setAutoCreateContainerGaps(true);
GroupLayout.SequentialGroup vGroup = layout.createSequentialGroup();
vGroup.addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(new JButton("ボタン1"))
.addComponent(new JButton("ボタン2"))
.addComponent(new JButton("ボタン3")));
layout.setVerticalGroup(vGroup);
frame.pack();
frame.setVisible(true);
}
}
これらはいくつかの一般的な方法であり、他にもさまざまな方法があります。ご希望のレイアウト方法に応じて、適切な方法を選択してください。