Java SpringLayout17 Mar 2025 | 4 分钟阅读 一个 SpringLayout 根据一组约束来排列其相关容器的子元素。 约束只是两个组件边缘之间的水平和垂直距离。 每个约束都由一个 SpringLayout.Constraint 对象表示。 SpringLayout 容器的每个子元素,以及容器本身,都恰好有一组与其关联的约束。 每个边缘位置都取决于其他边缘的位置。 如果添加一个约束来创建一个新的边缘,则先前的绑定将被丢弃。 SpringLayout 不会自动设置它管理的组件的位置。 构造函数SpringLayout(): 该类的默认构造函数用于实例化 SpringLayout 类。 嵌套类修饰符和类型 | Class | 描述 |
---|
静态类 | SpringLayout.Constraints | 它是一个约束对象,有助于控制组件在由 SpringLayout 控制的容器中的大小和位置变化 |
SpringLayout 字段修饰符和类型 | 字段 | 描述 |
---|
static String | BASELINE | 它指定组件的基线。 | static String | EAST | 它指定组件边界矩形的右边缘。 | static String | HEIGHT | 它指定组件边界矩形的高度。 | static String | HORIZONTAL_CENTER | 它指定组件边界矩形的水平中心。 | static String | NORTH | 它指定组件边界矩形的上边缘。 | static String | SOUTH | 它指定组件边界矩形的下边缘。 | static String | VERTICAL_CENTER | 它指定组件边界矩形的垂直中心。 | static String | WEST | 它指定组件边界矩形的左边缘。 | static String | WIDTH | 它指定组件边界矩形的宽度。 |
SpringLayout 方法修饰符和类型 | 方法 | 描述 |
---|
void | addLayoutComponent(Component component, Object constraints) | 如果约束是 SpringLayout.Constraints 的实例,则将约束与指定的组件关联。 | void | addLayoutComponent(String name, Component c) | 无效果,因为此布局管理器不使用每个组件字符串。 | Spring | getConstraint(String edgeName, Component c) | 它返回控制组件指定边缘与其父级的顶部或左边缘之间距离的 spring。 | SpringLayout.Constraints | getConstraints(Component c) | 它返回指定组件的约束。 | float | getLayoutAlignmentX(Container p) | 它返回 0.5f (居中)。 | float | getLayoutAlignmentY(Container p) | 它返回 0.5f (居中)。 | void | invalidateLayout(Container p) | 它使布局无效,表明如果布局管理器有缓存信息,则应将其丢弃。 | void | layoutContainer(Container parent) | 它布置指定的容器。 | 维度 | maximumLayoutSize(Container parent) | 它用于计算指定容器的最大尺寸,给定它包含的组件。 | 维度 | minimumLayoutSize(Container parent) | 它用于计算指定容器的最小尺寸,给定它包含的组件。 | 维度 | preferredLayoutSize(Container parent) | 它用于计算指定容器的首选尺寸,给定它包含的组件。 |
示例:1文件名: MySpringDemo.java 输出  示例:2以下程序在 JFrame 中排列组件。 我们创建了一个名为 "MySpringDemo1 class" 的类,并且还创建了 4 个名为 "btn1″、"btn2"、"btn3"、"btn4"、"btn5" 的 JButton 组件,然后使用方法 add() 将它们添加到 JFrame。 使用方法 setvisible(),我们设置了框架的可见性。 setLayout() 方法设置布局。 文件名: MySpringDemo1.java 输出 
|