在Swing布局中,可以使用BoxLayout來(lái)實(shí)現(xiàn)上下對(duì)齊。
首先,創(chuàng)建一個(gè)JPanel作為容器,并設(shè)置其布局管理器為BoxLayout:
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
然后,創(chuàng)建需要上下對(duì)齊的組件,比如JLabel、JTextField等,并添加到容器中:
JLabel label = new JLabel("Label");
JTextField textField = new JTextField(10);
panel.add(label);
panel.add(textField);
默認(rèn)情況下,BoxLayout會(huì)將組件在垂直方向上居中對(duì)齊,要實(shí)現(xiàn)上下對(duì)齊,可以通過(guò)設(shè)置組件的對(duì)齊方式來(lái)實(shí)現(xiàn)??梢允褂胹etAlignmentX方法來(lái)設(shè)置組件的水平對(duì)齊方式,使用setAlignmentY方法來(lái)設(shè)置組件的垂直對(duì)齊方式。
例如,將組件在垂直方向上上對(duì)齊,可以使用以下代碼:
label.setAlignmentY(Component.TOP_ALIGNMENT);
textField.setAlignmentY(Component.TOP_ALIGNMENT);
最后,將容器添加到窗口中顯示:
JFrame frame = new JFrame();
frame.add(panel);
frame.pack();
frame.setVisible(true);
這樣,就實(shí)現(xiàn)了上下對(duì)齊的布局。