在此示例中,您可以看到如何使用FlowLayout管理器排列秋千组件。该管理器根据容器组件的方向(例如ComponentOrientation.LEFT_TO_RIGHT和)按方向流排列组件ComponentOrientation.RIGHT_TO_LEFT。
package org.nhooo.example.swing;
import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample extends JFrame {
public FlowLayoutExample() {
initialize();
}
private void initialize() {
setSize(250, 150);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
// 创建一个新的FlowLayout管理器并将组件排列设置为
//左对齐。另一种安排是FlowLayout.CENTER,
// FlowLayout.RIGHT,FlowLayout.LEADING和FlowLayout.TRAILING。
FlowLayout layoutManager = new FlowLayout(FlowLayout.RIGHT);
// 设置放置在组件中的组件之间的水平和垂直间隙
// 内容窗格为10像素。
layoutManager.setHgap(10);
layoutManager.setVgap(10);
setLayout(layoutManager);
// 从右到左设置容器的组件方向。
// 这将第一个组件放置在
// 容器。
getContentPane().setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
// 在框架面板中添加一些文本字段。
JTextField[][] textFields = new JTextField[3][3];
for (int i = 0; i < textFields.length; i++) {
for (int j = 0; j < textFields[i].length; j++) {
textFields[i][j] = new JTextField(5);
textFields[i][j].setText(String.valueOf(((i + 1) * (j + 1))));
getContentPane().add(textFields[i][j]);
}
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new FlowLayoutExample().setVisible(true);
}
});
}
}