Module  javafx.graphics
软件包  javafx.scene.layout

Class BackgroundSize



  • public final class BackgroundSize
    extends Object
    定义BackgroundImage应该填充的区域的大小相对于其样式的Region。 有几个属性的值优先于其他属性。 特别是有4个关键属性, widthheightcontain ,和cover 宽度和高度都是彼此独立的,但两者都与包含和覆盖相互作用。

    从CSS规范中, cover定义为:

    Scale the image, while preserving its intrinsic aspect ratio (if any), to the smallest size such that both its width and its height can completely cover the background positioning area.
    contain被定义为:
    Scale the image, while preserving its intrinsic aspect ratio (if any), to the largest size such that both its width and its height can fit inside the background positioning area.
    宽度和高度都指定(绝对值或百分比)要使用的大小。 这两个属性只适用于cover和contains都是false。 如果封面和包含均为真,则将使用cover

    宽度和高度也可以设置为AUTO ,表示该区域的大小应使用图像的本征大小,或者如果不能确定,则为100%。

    从以下版本开始:
    JavaFX 8.0
    • Field Summary

      Fields  
      Modifier and Type Field 描述
      static double AUTO
      从CSS规范中:通过使用图像的内在比例和其他维度的大小,或使用图像的本征大小,或者将图像的本征大小视为100%,可以解析一个维度的“自动”值。
      static BackgroundSize DEFAULT
      当未定义显式大小时,BackgroundImages使用的默认BackgroundSize。
    • 构造方法摘要

      构造方法  
      Constructor 描述
      BackgroundSize​(double width, double height, boolean widthAsPercentage, boolean heightAsPercentage, boolean contain, boolean cover)
      创建一个新的BackgroundSize。
    • 方法摘要

      所有方法  接口方法  具体的方法 
      Modifier and Type 方法 描述
      boolean equals​(Object o)
      指示一些其他对象是否等于此。
      double getHeight​()
      相关联的BackgroundImage应该呈现的区域内的区域的高度。
      double getWidth​()
      相关联的BackgroundImage应该呈现的区域内的区域的宽度。
      int hashCode​()
      返回对象的哈希码值。
      boolean isContain​()
      如果为真,则缩放图像,同时将其固有长宽比(如果有的话)保持为最大尺寸,使其宽度和高度都可以适合背景定位区域。
      boolean isCover​()
      如果为真,则缩放图像,同时将其固有长宽比(如果有的话)保留为最小尺寸,使其宽度和高度都可以完全覆盖背景定位区域。
      boolean isHeightAsPercentage​()
      指定 height包含的值是否应解释为百分比或正常值。
      boolean isWidthAsPercentage​()
      指定 width包含的值是否应解释为百分比或正常值。
    • 字段详细信息

      • AUTO

        public static final double AUTO
        从CSS规范:
        An "auto" value for one dimension is resolved by using the image's intrinsic ratio and the size of the other dimension, or failing that, using the image's intrinsic size, or failing that, treating it as 100%.

        If both values are "auto" then the intrinsic width and/or height of the image should be used, if any, the missing dimension (if any) behaving as "auto" as described above. If the image has neither an intrinsic width nor an intrinsic height, its size is determined as for "contain".

        当设置为AUTO时,将忽略widthAsPercentage和heightAsPercentage的值。
        另请参见:
        Constant Field Values
      • DEFAULT

        public static final BackgroundSize DEFAULT
        当未定义显式大小时,BackgroundImages使用的默认BackgroundSize。 默认情况下,BackgroundSize对于宽度和高度是AUTO,AUTO,既不覆盖也不包含。
    • 构造方法详细信息

      • BackgroundSize

        public BackgroundSize​(double width,
                              double height,
                              boolean widthAsPercentage,
                              boolean heightAsPercentage,
                              boolean contain,
                              boolean cover)
        创建一个新的BackgroundSize。
        参数
        width - 宽度。 不能小于0,除了AUTO的值。
        height - 高度。 不能小于0,除了AUTO的值。
        widthAsPercentage - 是否将宽度解释为百分比
        heightAsPercentage - 是否将高度解释为百分比
        contain - 图像的尺寸是否应该最大限度地适合该区域
        cover - 图像的大小是否应该覆盖“区域”
    • 方法详细信息

      • getWidth

        public final double getWidth​()
        相关联的BackgroundImage应该呈现的区域内的区域的宽度。 如果设置为AUTO,则忽略widthAsPercentage 如果指定了containcover则此值cover 该值不能为负值,除非设置为AUTO值。
        结果
        在相关联的BackgroundImage应该呈现的区域内的区域的宽度
      • getHeight

        public final double getHeight​()
        相关联的BackgroundImage应该呈现的区域内的区域的高度。 如果设置为AUTO,则忽略heightAsPercentage 如果指定了containcover则此值cover 该值不能为负值,除非设置为AUTO值。
        结果
        相关联的BackgroundImage应该呈现的区域内的区域的高度
      • isWidthAsPercentage

        public final boolean isWidthAsPercentage​()
        指定 width包含的值是否应解释为百分比或正常值。
        结果
        如果宽度应解释为百分比,则为true
      • isHeightAsPercentage

        public final boolean isHeightAsPercentage​()
        指定 height包含的值是否应解释为百分比或正常值。
        结果
        如果高度应解释为百分比,则为true
      • isContain

        public final boolean isContain​()
        如果为真,则缩放图像,同时将其固有长宽比(如果有的话)保持为最大尺寸,使其宽度和高度都可以适合背景定位区域。
        结果
        如果图像可以适合背景定位区域,则为true
      • isCover

        public final boolean isCover​()
        如果为真,则缩放图像,同时将其固有长宽比(如果有的话)保留为最小尺寸,使其宽度和高度都可以完全覆盖背景定位区域。
        结果
        如果图像可以完全覆盖背景定位区域,则为true
      • equals

        public boolean equals​(Object o)
        指示一些其他对象是否等于此。

        equals方法在非空对象引用上实现等价关系:

        • 自反性 :对于任何非空的参考值xx.equals(x)应该返回true
        • 它是对称的 :对于任何非空引用值xyx.equals(y)应该返回true当且仅当y.equals(x)回报true
        • 传递性 :对于任何非空引用值xy ,并z ,如果x.equals(y)回报truey.equals(z)回报true ,然后x.equals(z)应该返回true
        • 它是一致的 :对于任何非空引用值xy ,在多次调用x.equals(y)始终返回true或始终返回false ,没有设置中使用的信息equals比较上的对象被修改。
        • 对于任何非空的参考值xx.equals(null)应该返回false

        equals类方法Object实现对象上差别可能性最大的相等关系; 也就是说,对于任何非空参考值xy ,当且仅当xy引用相同对象( x == y具有值true )时,该方法返回true

        请注意,无论何时覆盖此方法,通常需要覆盖hashCode方法,以便维护hashCode方法的通用合同,该方法规定相等的对象必须具有相等的哈希码。

        重写:
        equalsObject
        参数
        o - 与之比较的参考对象。
        结果
        true如果此对象与obj参数相同; 否则为false
        另请参见:
        Object.hashCode()HashMap
      • hashCode

        public int hashCode​()
        返回对象的哈希码值。 支持这种方法有利于哈希表,如HashMap提供的那样

        hashCode的总合同是:

        • 无论何时在执行Java应用程序时多次在同一对象上调用相同的对象, hashCode方法必须始终返回相同的整数,前提是修改了对象中equals比较中的信息。 该整数不需要从一个应用程序的执行到相同应用程序的另一个执行保持一致。
        • 如果根据equals(Object)方法两个对象相等,则在两个对象中的每一个上调用hashCode方法必须产生相同的整数结果。
        • 要求如果两个对象根据Object.equals(java.lang.Object)方法不相等,则在两个对象中的每一个上调用hashCode方法必须产生不同的整数结果。 但是,程序员应该意识到,为不等对象生成不同的整数结果可能会提高哈希表的性能。

        尽可能合理实用,由类Object定义的hashCode方法确实为不同对象返回不同的整数。 (在某个时间点,hashCode可能或可能不被实现为对象的存储器地址的某些功能。)

        重写:
        hashCodeObject
        结果
        该对象的哈希码值。
        另请参见:
        Object.equals(java.lang.Object)System.identityHashCode(java.lang.Object)