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

Class Background



  • public final class Background
    extends Object
    背景Region 背景是一个不可变的对象,它封装了渲染Region的背景所需的整个数据集。 因为这个类是不可变的,你可以在许多不同的地区自由地使用相同的背景。 请参阅JavaFX CSS Reference Guide有关为区域背景设置样式的CSS规则的完整说明。

    每个背景由fills和/或images组成 这两个列表都不会为空,但是两者都可能为空。 每个定义的BackgroundFill按顺序呈现,其次是每个定义的BackgroundImage

    背景的outsets定义了一个区域的绘图区域的任何扩展,这是需要考虑所有背景图。 由于所有BackgroundImages被剪切到绘图区域,并且不定义它们,所以这些外部部分由本背景指定的BackgroundFill(如果有的话)严格定义。 外部值是严格非负的。

    从以下版本开始:
    JavaFX 8.0
    • 字段详细信息

      • EMPTY

        public static final Background EMPTY
        一个空的背景,使用而不是null。
    • 构造方法详细信息

      • Background

        public Background​(BackgroundFill... fills)
        通过提供一个BackgroundFill数组创建一个新的背景。 该数组可能为空,或者可能包含空值。 任何空值都将被忽略,不会对fillsoutsets做出贡献。
        参数
        fills - 填写。 这可能为null,并且可能包含null。 任何包含的空值将被过滤掉,不包括在最终的填充列表中。 空数组变为空列表。
      • Background

        public Background​(BackgroundImage... images)
        通过提供一个BackgroundImages数组创建一个新的背景。 该数组可能为空,或者可能包含空值。 任何空值都将被忽略,不会对images做出贡献。
        参数
        images - 图像。 这可能为null,并且可能包含null。 任何包含的空值被过滤掉,不包括在最终的图像列表中。 空数组变为空列表。
      • Background

        public Background​(List<BackgroundFill> fills,
                          List<BackgroundImage> images)
        创建一个新的背景提供两个列表,一个用于背景填充,一个用于背景图像。 任一列表可能为null,并且可能包含null。 这些列表中的任何空值将被忽略,不会有助于fillsimages ,或outsets
        参数
        fills - 填写。 这可能为null,并且可能包含null。 任何包含的空值将被过滤掉,不包括在最终的填充列表中。 空列表变为空列表。
        images - 图像。 这可能为null,并且可能包含null。 任何包含的空值被过滤掉,不包括在最终的图像列表中。 空列表变为空列表。
      • Background

        public Background​(BackgroundFill[] fills,
                          BackgroundImage[] images)
        通过提供两个阵列创建一个新的背景,一个用于背景填充,另一个用于背景图像。 数组可能为空,并且可能包含空值。 在这些阵列的任何空值将被忽略,不会有助于fillsimages ,或outsets
        参数
        fills - 填写。 这可能为null,并且可能包含null。 任何包含的空值将被过滤掉,不包括在最终的填充列表中。 空数组变为空列表。
        images - 图像。 这可能为null,并且可能包含null。 任何包含的空值被过滤掉,不包括在最终的图像列表中。 空数组变为空列表。
    • 方法详细信息

      • getClassCssMetaData

        public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData​()
        结果
        与此类相关联的CssMetaData可能包括其类的CssMetaData。
      • getFills

        public final List<BackgroundFill> getFills​()
        BackgroundFill的列表,它们一起定义了该背景的填充部分。 该列表是不可修改的和不可变的。 它永远不会为空。 此列表的元素也不会为空。
        结果
        BackgroundFill的列表
      • getImages

        public final List<BackgroundImage> getImages​()
        BackgroundImages的列表,它们一起定义了此Background的图像部分。 该列表是不可修改的和不可变的。 它永远不会为空。 此列表的元素也不会为空。
        结果
        BackgroundImages的列表
      • getOutsets

        public final Insets getOutsets​()
        这个背景的外在。 这表示将在背景中进行所有绘图的最大的边框矩形。 外界永远不会是负面的,代表距离区域边缘的距离。 任何将超出外界的BackgroundImages将被剪辑。 只有背景资料有助于外援。
        结果
        外人
      • isEmpty

        public final boolean isEmpty​()
        获取背景是否为空。 如果没有填充或图像,则为空。
        结果
        如果背景为空,则为true,否则为false。
      • isFillPercentageBased

        public boolean isFillPercentageBased​()
        获取此背景的填充是基于百分比(即相对于被定制的区域的大小)。 具体来说,如果此背景上的任何填充上的任何CornerRadii具有基于百分比的半径,则返回true。
        结果
        如果此背景上任何BackgroundFill的任何CornerRadii的任何CornerRadii将返回true,否则为true。
        从以下版本开始:
        JavaFX 8.0
      • 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)