在Java中,可以使用`javax.swing.GroupLayout`类来获取多行流式布局的首选大小。以下是一个示例代码: ```java import javax.swing.*; import java.awt.*; public class Main { public static void main(String[] args) { JFrame frame = new JFrame("FlowLayout Example"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); GroupLayout layout = new GroupLayout(panel); panel.setLayout(layout); // 添加组件到布局中 layout.setHorizontalGroup( layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addComponent(new JButton("Button 1")) .addComponent(new JButton("Button 2")) .addComponent(new JButton("Button 3")) ); layout.setVerticalGroup( layout.createSequentialGroup() .addComponent(new JButton("Button 1")) .addComponent(new JButton("Button 2")) .addComponent(new JButton("Button 3")) ); // 获取布局的首选大小 Dimension preferredSize = layout.preferredLayoutSize(panel); System.out.println("Preferred Size: " + preferredSize); frame.add(panel); frame.pack(); frame.setVisible(true); } } ``` 在上面的示例中,我们创建了一个`JFrame`窗口,并在其中添加了一个`JPanel`面板。然后,我们使用`GroupLayout`布局管理器来设置面板的布局。在`setHorizontalGroup`和`setVerticalGroup`方法中,我们使用`GroupLayout.Alignment.LEADING`来指定组件的对齐方式。然后,我们添加了三个按钮组件到布局中。 最后,我们使用`preferredLayoutSize`方法来获取布局的首选大小,并将其打印出来。