- java.lang.Object
-
- java.lang.Enum<Component.BaselineResizeBehavior>
-
- java.awt.Component.BaselineResizeBehavior
-
- All Implemented Interfaces:
-
Serializable
,Comparable<Component.BaselineResizeBehavior>
- Enclosing class:
- Component
public static enum Component.BaselineResizeBehavior extends Enum<Component.BaselineResizeBehavior>
枚举组件的基准线随着大小变化而改变的常见方式。 基准调整大小行为主要用于需要知道基准位置如何随着组件大小变化而变化的布局管理器。 通常,基准调整大小行为对于大于或等于最小大小(实际最小大小,而不是开发人员指定的最小大小)的大小将是有效的。 对于小于最小尺寸的尺寸,基线可能以基线调整大小行为以外的方式改变。 类似地,当大小接近Integer.MAX_VALUE
和/或Short.MAX_VALUE
,基线可能以基线调整大小行为指示的方式改变。- 从以下版本开始:
- 1.6
- 另请参见:
-
Component.getBaselineResizeBehavior()
,Component.getBaseline(int,int)
-
-
Enum Constant Summary
Enum Constants Enum Constant 描述 CENTER_OFFSET
表示基线保持与组件中心的固定距离。CONSTANT_ASCENT
表示基线相对于y-origin保持固定。CONSTANT_DESCENT
表示基线相对于高度保持固定,并且不随宽度变化而改变。OTHER
表示使用任何其他常量不能表示基准调整大小行为。
-
方法摘要
所有方法 静态方法 具体的方法 Modifier and Type 方法 描述 static Component.BaselineResizeBehavior
valueOf(String name)
以指定的名称返回此类型的枚举常量。static Component.BaselineResizeBehavior[]
values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。
-
-
-
Enum Constant Detail
-
CONSTANT_ASCENT
public static final Component.BaselineResizeBehavior CONSTANT_ASCENT
表示基线相对于y-origin保持固定。 也就是说,getBaseline
返回相同的值,而不管高度或宽度如何。 例如,JLabel
具有垂直取向的含非空文本TOP
应具有基线类型的CONSTANT_ASCENT
。
-
CONSTANT_DESCENT
public static final Component.BaselineResizeBehavior CONSTANT_DESCENT
表示基线相对于高度保持固定,并且不随宽度变化而改变。 也就是说,对于任何高度H,H和getBaseline(w, H)
之间的差异是相同的。 例如,JLabel
具有垂直取向的含非空文本BOTTOM
应具有基线类型的CONSTANT_DESCENT
。
-
CENTER_OFFSET
public static final Component.BaselineResizeBehavior CENTER_OFFSET
表示基线保持与组件中心的固定距离。 也就是说,对于任何高度H,getBaseline(w, H)
和H / 2
之间的差异是相同的(加或减一,取决于舍入误差)。由于可能的舍入误差,建议您以两个连续的高度要求基线,并使用返回值来确定是否需要按1进行计算。以下显示了如何计算任何高度的基线:
Dimension preferredSize = component.getPreferredSize(); int baseline = getBaseline(preferredSize.width, preferredSize.height); int nextBaseline = getBaseline(preferredSize.width, preferredSize.height + 1); // Amount to add to height when calculating where baseline // lands for a particular height: int padding = 0; // Where the baseline is relative to the mid point int baselineOffset = baseline - height / 2; if (preferredSize.height % 2 == 0 && baseline != nextBaseline) { padding = 1; } else if (preferredSize.height % 2 == 1 && baseline == nextBaseline) { baselineOffset--; padding = 1; } // The following calculates where the baseline lands for // the height z: int calculatedBaseline = (z + padding) / 2 + baselineOffset;
-
OTHER
public static final Component.BaselineResizeBehavior OTHER
表示使用任何其他常量不能表示基准调整大小行为。 这也可能表示基线随组件的宽度而变化。 这也由没有基线的组件返回。
-
-
方法详细信息
-
values
public static Component.BaselineResizeBehavior[] values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:for (Component.BaselineResizeBehavior c : Component.BaselineResizeBehavior.values()) System.out.println(c);
- 结果
- 一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
-
valueOf
public static Component.BaselineResizeBehavior valueOf(String name)
以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)- 参数
-
name
- 要返回的枚举常量的名称。 - 结果
- 具有指定名称的枚举常数
- 异常
-
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量 -
NullPointerException
- 如果参数为空
-
-