java.lang.Object
javax.swing.SizeRequirements
- 所有已实现的接口:
Serializable
为了方便布局管理器,计算有关组件大小和位置的信息。所有尺寸和位置计算方法都是以 SizeRequirements 数组作为参数的类方法。 SizeRequirements 类支持两种类型的布局:
- tiled
- 组件端到端放置,从坐标 0(最左边或最上面的位置)开始,或者从表示分配跨度结束的坐标(最右边或最下面的位置)开始。
- 对齐
- 组件按照每个组件的 X 或 Y 对齐值指定对齐。
每个 SizeRequirements 对象都包含有关单个组件或一组组件的宽度(和 X 对齐方式)或高度(和 Y 对齐方式)的信息:
minimum- 组件或组件组的最小合理宽度/高度,以像素为单位。
preferred- 组件或组件组的自然宽度/高度,以像素为单位。
maximum- 组件或组件组的最大合理宽度/高度,以像素为单位。
alignment- 组件或组件组的 X/Y 对齐方式。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
- 自从:
- 1.2
- 参见:
-
字段摘要
字段 -
构造方法总结
构造方法构造方法描述创建一个 SizeRequirements 对象,其中最小、首选和最大大小设置为零,对齐值为 0.5(居中)。SizeRequirements(int min, int pref, int max, float a) 创建具有指定最小、首选和最大大小以及指定对齐方式的 SizeRequirements 对象。 -
方法总结
修饰符和类型方法描述static int[]adjustSizes(int delta, SizeRequirements[] children) 按给定数量调整指定的数组大小。static voidcalculateAlignedPositions(int allocated, SizeRequirements total, SizeRequirements[] children, int[] offsets, int[] spans) 创建一组偏移量/跨度对,指定如何使用指定的对齐方式布置一组组件。static voidcalculateAlignedPositions(int allocated, SizeRequirements total, SizeRequirements[] children, int[] offsets, int[] spans, boolean normal) 创建一组偏移量/跨度对,指定如何使用指定的对齐方式布置一组组件。static voidcalculateTiledPositions(int allocated, SizeRequirements total, SizeRequirements[] children, int[] offsets, int[] spans) 创建一组偏移量/跨度对,表示如何端到端地布置一组组件。static voidcalculateTiledPositions(int allocated, SizeRequirements total, SizeRequirements[] children, int[] offsets, int[] spans, boolean forward) 创建一组偏移量/跨度对,表示如何端到端地布置一组组件。static SizeRequirementsgetAlignedSizeRequirements(SizeRequirements[] children) 确定对齐一组组件所需的总空间。static SizeRequirementsgetTiledSizeRequirements(SizeRequirements[] children) 确定端到端放置一组组件所需的总空间。toString()返回描述最小、首选和最大大小要求以及对齐方式的字符串。
-
字段详细信息
-
minimum
public int minimum所需的最小尺寸。对于组件comp,这应该等于comp.getMinimumSize().width或comp.getMinimumSize().height。 -
preferred
public int preferred首选(自然)尺寸。对于组件comp,这应该等于comp.getPreferredSize().width或comp.getPreferredSize().height。 -
maximum
public int maximum允许的最大尺寸。对于组件comp,这应该等于comp.getMaximumSize().width或comp.getMaximumSize().height。 -
alignment
public float alignment对齐方式,指定为 0.0 和 1.0 之间的值,包括端值。要指定居中,对齐应为 0.5。
-
-
构造方法详细信息
-
SizeRequirements
public SizeRequirements()创建一个 SizeRequirements 对象,其中最小、首选和最大大小设置为零,对齐值为 0.5(居中)。 -
SizeRequirements
public SizeRequirements(int min, int pref, int max, float a) 创建具有指定最小、首选和最大大小以及指定对齐方式的 SizeRequirements 对象。- 参数:
min- 最小尺寸 >= 0pref- 首选大小 >= 0max- 最大尺寸 >= 0a- 对齐 >= 0.0f && <= 1.0f
-
-
方法详情
-
toString
返回描述最小、首选和最大大小要求以及对齐方式的字符串。 -
getTiledSizeRequirements
确定端到端放置一组组件所需的总空间。集合中每个组件的需求由传入的 SizeRequirements 数组中的一个条目表示。返回的 SizeRequirements 对象的对齐方式为 0.5(居中)。空间要求永远不会超过 Integer.MAX_VALUE。- 参数:
children- 一组组件的空间要求。向量的长度可能为零,这将导致传回默认的 SizeRequirements 对象实例。- 返回:
- 总空间要求。
-
getAlignedSizeRequirements
确定对齐一组组件所需的总空间。集合中每个组件的需求由传入的 SizeRequirements 数组中的一个条目表示。所需的总空间永远不会超过 Integer.MAX_VALUE。- 参数:
children- 子需求集。如果长度为零,则返回结果将是 SizeRequirements 的默认实例。- 返回:
- 总空间要求。
-
calculateTiledPositions
public static void calculateTiledPositions(int allocated, SizeRequirements total, SizeRequirements [] children, int[] offsets, int[] spans) 创建一组偏移量/跨度对,表示如何端到端地布置一组组件。此方法要求您指定要分配的空间总量、要放置的每个组件的大小要求(指定为 SizeRequirements 数组)以及组件集的总大小要求。您可以通过调用 getTiledSizeRequirements 方法获取总大小要求。组件将沿正向平铺,偏移量从 0 开始增加。- 参数:
allocated- 要分配的总跨度 >= 0。total- 子请求的总数。此参数是可选的,可以为空。children- 每个组件的尺寸要求。offsets- 分配跨度的每个子节点从 0 开始的偏移量(确定跨度的位置)。spans- 为每个孩子分配的跨度,以构成总目标跨度。
-
calculateTiledPositions
public static void calculateTiledPositions(int allocated, SizeRequirements total, SizeRequirements [] children, int[] offsets, int[] spans, boolean forward) 创建一组偏移量/跨度对,表示如何端到端地布置一组组件。此方法要求您指定要分配的空间总量、要放置的每个组件的大小要求(指定为 SizeRequirements 数组)以及组件集的总大小要求。您可以通过调用 getTiledSizeRequirements 方法获取总大小要求。此方法还需要一个标志,指示组件应该在正向(偏移量从 0 增加)还是反向(偏移量从分配空间的末尾减少)平铺。前向表示从左到右或从上到下平铺的组件。反向表示从右到左或从下到上平铺的组件。- 参数:
allocated- 要分配的总跨度 >= 0。total- 子请求的总数。此参数是可选的,可以为空。children- 每个组件的尺寸要求。offsets- 分配跨度的每个子节点从 0 开始的偏移量(确定跨度的位置)。spans- 为每个孩子分配的跨度,以构成总目标跨度。forward- 如果为真,则偏移量从 0 开始增加,如果为假,则偏移量从分配空间的末尾开始减少。- 自从:
- 1.4
-
calculateAlignedPositions
public static void calculateAlignedPositions(int allocated, SizeRequirements total, SizeRequirements [] children, int[] offsets, int[] spans) 创建一组偏移量/跨度对,指定如何使用指定的对齐方式布置一组组件。由此产生的跨度分配将重叠,每一个都尽可能地适合给定的总分配。该方法需要你指定要分配的空间总量,每个要放置的组件的大小要求(指定为 SizeRequirements 的数组),以及一组组件的总大小要求(仅其中的对齐字段实际使用)。您可以通过调用 getAlignedSizeRequirements 获取总大小要求。正常对齐将使用表示组件左/上边缘的对齐值 0.0f 完成。- 参数:
allocated- 要分配的总跨度 >= 0。total- 子请求的总数。children- 每个组件的尺寸要求。offsets- 分配跨度的每个子节点从 0 开始的偏移量(确定跨度的位置)。spans- 为每个孩子分配的跨度,以构成总目标跨度。
-
calculateAlignedPositions
public static void calculateAlignedPositions(int allocated, SizeRequirements total, SizeRequirements [] children, int[] offsets, int[] spans, boolean normal) 创建一组偏移量/跨度对,指定如何使用指定的对齐方式布置一组组件。由此产生的跨度分配将重叠,每一个都尽可能地适合给定的总分配。该方法需要你指定要分配的空间总量,每个要放置的组件的大小要求(指定为 SizeRequirements 的数组),以及一组组件的总大小要求(仅其中的对齐字段实际使用)您可以通过调用 getAlignedSizeRequirements 来获取总大小要求。此方法还需要一个标志,指示应执行正常对齐还是反向对齐。对于正常对齐,值 0.0f 表示要对齐的组件的左/上边缘。对于反向对齐,0.0f 表示右/下边缘。- 参数:
allocated- 要分配的总跨度 >= 0。total- 子请求的总数。children- 每个组件的尺寸要求。offsets- 分配跨度的每个子节点从 0 开始的偏移量(确定跨度的位置)。spans- 为每个孩子分配的跨度,以构成总目标跨度。normal- 当为真时,对齐值 0.0f 表示左/上;如果为假,则表示右/底部。- 自从:
- 1.4
-
adjustSizes
按给定数量调整指定的数组大小。- 参数:
delta- 指定大小差异的 intchildren- SizeRequirements 对象数组- 返回:
- 包含每个项目的最终大小的整数数组
-