- java.lang.Object
-
- javax.swing.Spring
-
public abstract class Spring extends Object
Spring类的实例包含三个表征其行为的属性: 最小值 , 首选值和最大值 。 这些属性中的每一个都可能涉及基于一系列规则定义其第四个值 ,属性。可以将
Spring类的实例可视化为机械弹簧,当弹簧被压缩或拉伸远离其优选值时,该机械弹簧提供校正力。 该力被建模为距离优选值的距离的线性函数,但具有两个不同的常数 - 一个用于压缩力,一个用于拉伸力。 这些常数由弹簧的最小值和最大值指定,使得处于其最小值的弹簧产生与其处于其最大值时产生的力相等且相反的力。 因此, 优选值和最小值之间的差异表示弹簧可以被压缩的容易程度以及其最大值和优选值之间的差异表示Spring可以扩展的容易程度。 有关详细信息,请参阅sum(javax.swing.Spring, javax.swing.Spring)方法。通过在定义简单的算术运算
SpringS,的集合的行为Springs时,可以减少到一个普通的(非复合)Spring。 我们在Springs上定义“+”,“ - ”, max和min运算符,以便在每种情况下,结果都是Spring其特征与其组成弹簧具有有用的数学关系。Spring可被视为具有单个公共点的一对区间:首选值。 以下规则定义了一些可应用于区间的算术运算符([a, b]是指从a到b的区间,其中a <= b)。[a1, b1] + [a2, b2] = [a1 + a2, b1 + b2] -[a, b] = [-b, -a] max([a1, b1], [a2, b2]) = [max(a1, a2), max(b1, b2)]如果我们表示
SpringS作为[a, b, c],其中a <= b <= c,我们可以定义在相同的算术运算符SpringS:[a1, b1, c1] + [a2, b2, c2] = [a1 + a2, b1 + b2, c1 + c2] -[a, b, c] = [-c, -b, -a] max([a1, b1, c1], [a2, b2, c2]) = [max(a1, a2), max(b1, b2), max(c1, c2)]使用两个区间和
Springs我们可以用否定来定义“ - ”和min :X - Y = X + (-Y) min(X, Y) = -max(-X, -Y)对于此类中包含算术运算符的静态方法,我们实际上并不执行有问题的操作,因为这会在调用静态方法时对方法参数的属性值进行快照。 相反,静态方法创建一个新的
Spring实例,其中包含对方法参数的引用,以便新弹簧的特征跟踪弹簧的特征。 这有点像功能语言中的惰性值 。如果您要实现
SpringLayout,可以在How to Use SpringLayout (Java教程中的一节)中找到更多信息和示例。警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始,
java.beans软件包中添加了对所有JavaBeansjava.beans长期存储的支持。 请参阅XMLEncoder。- 从以下版本开始:
- 1.4
- 另请参见:
-
SpringLayout,SpringLayout.Constraints
-
-
字段汇总
字段 变量和类型 字段 描述 static intUNSET一个整数值,表示尚未计算属性值。
-
构造方法摘要
构造方法 变量 构造器 描述 protectedSpring()由工厂方法用于创建Spring。
-
方法摘要
所有方法 静态方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 static Springconstant(int pref)返回一个strut - 一个spring,其 minimum , preferred和 maximum值各自的值为pref。static Springconstant(int min, int pref, int max)返回弹簧,其 最小 , 优选的 ,并且 最大值具有以下值:min,pref,和max分别。abstract intgetMaximumValue()返回此Spring的 最大值 。abstract intgetMinimumValue()返回此Spring的 最小值 。abstract intgetPreferredValue()返回此Spring的 首选值。abstract intgetValue()返回此Spring的当前 值 。static Springheight(Component c)返回一个spring,其 minimum , preferred , maximum和 value属性由所提供组件的 minimumSize , preferredSize , maximumSize和 size属性的高度定义。static Springmax(Spring s1, Spring s2)返回max(s1, s2):一个spring,其值始终大于(或等于)s1和s2的值。static Springminus(Spring s)返回-s:弹簧以与s相反的方向运行。static Springscale(Spring s, float factor)返回一个spring,其 minimum , preferred , maximum和 value属性是参数springs的属性的s。abstract voidsetValue(int value)将此Spring的当前 值设置为value。static Springsum(Spring s1, Spring s2)返回s1+s2:春天代表s1和s2系列。static Springwidth(Component c)返回一个spring,其 minimum , preferred , maximum和 value属性由所提供组件的 minimumSize , preferredSize , maximumSize和 size属性的宽度定义。
-
-
-
字段详细信息
-
UNSET
public static final int UNSET
一个整数值,表示尚未计算属性值。- 另请参见:
- 常数字段值
-
-
方法详细信息
-
getMinimumValue
public abstract int getMinimumValue()
返回此Spring的 最小值 。- 结果
-
该
minimumValue该财产Spring
-
getPreferredValue
public abstract int getPreferredValue()
返回此Spring的 首选值。- 结果
-
preferredValue的Spring
-
getMaximumValue
public abstract int getMaximumValue()
返回此Spring的 最大值 。- 结果
-
该
maximumValue该财产Spring
-
getValue
public abstract int getValue()
返回此Spring的当前 值 。- 结果
-
该
value该财产Spring - 另请参见:
-
setValue(int)
-
setValue
public abstract void setValue(int value)
将此Spring的当前 值设置为value。- 参数
-
value-value属性的新设置 - 另请参见:
-
getValue()
-
constant
public static Spring constant(int pref)
返回一个strut - 一个spring,其 minimum , preferred和 maximum值各自的值为pref。- 参数
-
pref- 新弹簧的 最小值 , 首选值和 最大值 - 结果
-
弹簧的
最小值 ,
首选值和
最大值各自具有值
pref - 另请参见:
-
Spring
-
constant
public static Spring constant(int min, int pref, int max)
返回弹簧,其 最小 , 优选的 ,并且 最大值具有以下值:min,pref,和max分别。- 参数
-
min- 新春天的 最小值 -
pref- 新弹簧的 首选值 -
max- 新弹簧的 最大值 - 结果
-
一个弹簧,其
最小 ,
优选的 ,并且
最大值具有以下值:
min,pref,和max分别 - 另请参见:
-
Spring
-
minus
public static Spring minus(Spring s)
返回-s:弹簧以与s相反的方向运行。- 参数
-
s-Spring对象 - 结果
-
-s:弹簧在与s相反的方向上s - 另请参见:
-
Spring
-
sum
public static Spring sum(Spring s1, Spring s2)
返回s1+s2:春天代表s1和s2系列。 在一个总和,s3,两个弹簧,的s1和s2,的菌株s1,s2,和s3被保持在相同的水平(由它们的整数值 s隐含的精度内)。 压缩弹簧的应变是:value - pref ------------ pref - min而张力弹簧的应变是:value - pref ------------ max - pref当setValue上调用的总和弹簧,s3,在应变s3被使用上面的公式之一来计算。 一旦知道了总和的应变,则设定s1和s2的值 s,使得它们具有等于总和的应变。 对公式进行评估,以便将舍入误差考虑在内,并确保s1和s2的值 s的s1恰好等于s3的值 。- 参数
-
s1-Spring对象 -
s2- 一个Spring对象 - 结果
-
s1+s2:春天代表s1和s2系列 - 另请参见:
-
Spring
-
max
public static Spring max(Spring s1, Spring s2)
返回max(s1, s2):一个spring,其值始终大于(或等于)s1和s2的值。- 参数
-
s1- 一个Spring对象 -
s2-Spring对象 - 结果
-
max(s1, s2):一个弹簧,其值始终大于(或等于)s1和s2的值 - 另请参见:
-
Spring
-
scale
public static Spring scale(Spring s, float factor)
返回一个spring,其minimum , preferred , maximum和value属性是参数springs的属性的s。 当factor为负时(根据区间运算规则),交换最小和最大属性。例如,当因子为0.5f时,结果表示其输入的“中点” - 这对于集中容器中的组件非常有用。
- 参数
-
s- 规模之泉 -
factor- 按比例factor金额。 - 结果
-
弹簧的属性是输入弹簧
s乘以factor弹簧 - 异常
-
NullPointerException- 如果s为空 - 从以下版本开始:
- 1.5
-
width
public static Spring width(Component c)
返回一个spring,其minimum , preferred , maximum和value属性由所提供组件的minimumSize , preferredSize , maximumSize和size属性的宽度定义。 返回的spring是一个“包装器”实现,其方法调用所提供组件的相应大小方法。 因此,返回弹簧的最小值,首选值,最大值和值属性会报告组件中相应属性的当前状态,并在它们更改时跟踪它们。- 参数
-
c- 用于计算大小的组件 - 结果
- 一个弹簧,其属性由组件尺寸方法的水平分量定义。
- 异常
-
NullPointerException- 如果c为空 - 从以下版本开始:
- 1.5
-
height
public static Spring height(Component c)
返回一个spring,其minimum , preferred , maximum和value属性由所提供组件的minimumSize , preferredSize , maximumSize和size属性的高度定义。 返回的spring是一个“包装器”实现,其方法调用所提供组件的相应大小方法。 因此,返回弹簧的最小值,首选值,最大值和值属性会报告组件中相应属性的当前状态,并在它们更改时跟踪它们。- 参数
-
c- 用于计算大小的组件 - 结果
- 一个弹簧,其属性由组件尺寸方法的垂直分量定义。
- 异常
-
NullPointerException- 如果c为空 - 从以下版本开始:
- 1.5
-
-