Module java.desktop
Package javax.swing

Class SpringLayout.Constraints

java.lang.Object
javax.swing.SpringLayout.Constraints
封装类:
SpringLayout

public static class SpringLayout.Constraints extends Object
Constraints对象保存了控制组件在由SpringLayout控制的容器中大小和位置变化的约束条件。一个Constraints对象类似于一个Rectangle,它具有xywidthheight属性。然而,在Constraints对象中,这些属性具有Spring值而不是整数。此外,Constraints对象可以被操作为四个边缘 -- 北、南、东、西 -- 使用constraint属性。

对于Constraints对象,以下公式始终成立(这里WEST和x是同义词,NORTH和y也是同义词):

               EAST = WEST + WIDTH
              SOUTH = NORTH + HEIGHT
  HORIZONTAL_CENTER = WEST + WIDTH/2
    VERTICAL_CENTER = NORTH + HEIGHT/2
  ABSOLUTE_BASELINE = NORTH + RELATIVE_BASELINE*
 

例如,如果您已经指定了WIDTH和WEST(X)位置,则EAST被计算为WEST + WIDTH。如果您指定了WIDTH和EAST位置,则WEST(X)位置被计算为EAST - WIDTH。

[RELATIVE_BASELINE是一个私有约束条件,当调用SpringLayout.Constraints(Component)构造函数或将约束对象注册到SpringLayout对象时,它会自动设置。]

注意:在本文档中,运算符代表Spring类中的方法。例如,“a + b”等同于Spring.sum(a, b),而“a - b”等同于Spring.sum(a, Spring.minus(b))。有关弹簧算术的更多详细信息,请参阅Spring API文档

因为Constraints对象的属性 -- 代表其边缘、大小和位置 -- 都可以独立设置,但又相互关联,所以Constraints对象可能会变得过度约束。例如,如果设置了WESTWIDTHEAST边缘,必须采取措施确保上述第一个公式成立。为此,Constraints对象会丢弃最近设置的约束条件,以使公式成立。

自Java版本:
1.4