モジュール javafx.graphics
パッケージ javafx.scene.layout

クラスBorderImage



  • public class BorderImage
    extends Object
    あるリージョンのボーダーとしてイメージをレンダリングする方法を記述するプロパティを定義します。 BorderImageにはImageを指定する必要があります(nullにはできません)。 repeatXおよびrepeatYプロパティは、各方向でイメージを繰り返す方法を定義します。 slicesプロパティは、リージョン全体に拡大できるようにイメージを区分化する方法を定義し、widthsは、ボーダー・イメージで埋めるリージョンの領域を定義します。 最終的に、outsetsは、ボーダーが拡張するボーダーの端から外側への距離を定義します。 BorderImageのアウトセットはボーダーのアウトセットに影響し、さらにリージョンの境界に影響します。

    BorderImageは不変であるため、どのキャッシュでも安全に使用でき、複数のリージョンの間で安全に再使用できます。

    形状が定義されたリージョンに適用される場合、BorderImageは無視されます。

    導入されたバージョン:
    JavaFX 8.0
    • コンストラクタの詳細

      • BorderImage

        public BorderImage​(Image image,
                           BorderWidths widths,
                           Insets insets,
                           BorderWidths slices,
                           boolean filled,
                           BorderRepeat repeatX,
                           BorderRepeat repeatY)
        新しいBorderImageを作成します。 イメージを指定する必要があるか、NullPointerExceptionがスローされます。
        パラメータ:
        image - 使用するイメージ。 nullは指定できません。
        widths - 各ディメンションのボーダーの幅。 null値はInsets.EMPTYになります。
        insets - リージョンに対して相対的にボーダーを配置する枠。 null値はInsets.EMPTYになります。
        slices - イメージの区分。 nullの場合、デフォルトはBorderImageSlices.DEFAULTです。
        filled - 中央のパッチを描画するかどうかを示すフラグ
        repeatX - x方向のボーダー・イメージの繰返し値。 nullの場合、デフォルトはSTRETCHです。
        repeatY - y方向のボーダー・イメージの繰返し値。 nullの場合、デフォルトはrepeatXと同じ値になります。
    • メソッドの詳細

      • getImage

        public final Image getImage​()
        使用されるイメージ。 nullは不可。 このイメージのロードに失敗した場合は、BorderImage全体がレンダリング時にスキップされ、境界または他の計算には影響しません。
        戻り値:
        使用するイメージ
      • getRepeatX

        public final BorderRepeat getRepeatX​()
        該当する場合に、ボーダー・イメージがリージョンのx軸に沿ってどのように繰り返されるかを示します。 値を指定しない場合はデフォルト値のSTRETCHになります。
        戻り値:
        ボーダー・イメージが領域のx軸に沿って繰り返されるかどうかを示すBorderRepeat
      • getRepeatY

        public final BorderRepeat getRepeatY​()
        該当する場合に、ボーダー・イメージがリージョンのy軸に沿ってどのように繰り返されるかを示します。 値を指定しない場合はデフォルト値のSTRETCHになります。
        戻り値:
        ボーダー・イメージがその領域のy軸に沿って繰り返されるかどうかを示すBorderRepeat
      • getWidths

        public final BorderWidths getWidths​()
        それぞれの辺のボーダーの幅。 これらは絶対幅またはリージョンのサイズの割合のいずれかとして定義できます。詳細は、BorderWidthsを参照してください。 nullの場合、このデフォルトは、1ピクセル幅となります。
        戻り値:
        各辺のボーダーのBorderWidth
      • getSlices

        public final BorderWidths getSlices​()
        イメージの区分を定義します。 JavaFXは、各区分がイメージを9パッチに分割する4区分のスキームを使用します。 左上パッチはボーダーの左上隅を定義します。 上部パッチは上部ボーダーを定義し、このパッチを構成するイメージは水平方向に拡大され(、またはrepeatXに定義された内容に従い)、必要なスペース全体に表示されます。 右上パッチは右上隅に適用され、右パッチは垂直方向に拡大され(、またはrepeatYに定義された内容に従い)、必要なスペース全体に表示されます。 その他の場合も同様です。 中央パッチは各ディメンションで拡大されます(またはrepeatX、repeatYに定義された内容に従います)。 デフォルトでは、中央は省略されます(つまり、描画されません)が、filledプロパティに対してBorderImageSlices値がtrueの場合は、中央が描画されます。 このプロパティのデフォルト値は、BorderImageSlices.DEFAULTとなり、border-image-sliceは100%となります。
        戻り値:
        イメージのスライスを定義するBorderWidth
        関連項目:
        border-image-slice
      • isFilled

        public final boolean isFilled​()
        中央パッチ(左、右、上および下の区分により定義される)を描画する必要があるかどうかを指定します。
        戻り値:
        中央のパッチを描画する必要がある場合はtrue
      • getInsets

        public final Insets getInsets​()
        BorderImageの枠は、リージョンの端に対して枠線がどこに位置付けられるかを定義します。 この値はnullにはなりません。
        戻り値:
        BorderImageのインセット
      • equals

        public boolean equals​(Object o)
        このオブジェクトと他のオブジェクトが等しいかどうかを示します。

        equalsメソッドは、null以外のオブジェクト参照での同値関係を実装します。

        • 反射性(reflexive): null以外の参照値xについて、x.equals(x)trueを返します。
        • 対称性(symmetric): null以外の参照値xおよびyについて、y.equals(x)trueを返す場合に限り、x.equals(y)trueを返します。
        • 推移性(transitive): null以外の参照値xy、およびzについて、x.equals(y)trueを返し、y.equals(z)trueを返す場合、x.equals(z)trueを返します。
        • 一貫性(consistent): null以外の参照値xおよびyについて、x.equals(y)の複数の呼出しは、このオブジェクトに対するequalsによる比較で使われた情報が変更されていなければ、一貫してtrueを返すか、一貫してfalseを返します。
        • null以外の参照値xについて、x.equals(null)falseを返します。

        Objectクラスのequalsメソッドは、もっとも比較しやすいオブジェクトの同値関係を実装します。つまり、null以外の参照値xyについて、このメソッドはxyが同じオブジェクトを参照する(x == ytrue)場合にだけtrueを返します。

        通常、このメソッドをオーバーライドする場合は、hashCodeメソッドを常にオーバーライドして、等価なオブジェクトは等価なハッシュ・コードを保持する必要があるというhashCodeメソッドの汎用規約に従う必要があることに留意してください。

        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        o - 比較対象の参照オブジェクト。
        戻り値:
        このオブジェクトがobj引数と同じである場合はtrue、それ以外の場合はfalse
        関連項目:
        Object.hashCode()HashMap
      • hashCode

        public int hashCode​()
        オブジェクトのハッシュ・コード値を返します。 このメソッドは、HashMapによって提供されるハッシュ表などの、ハッシュ表の利点のためにサポートされています。

        hashCodeの一般的な規則は次のとおりです。

        • Javaアプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、このオブジェクトに対するequalsの比較で使用される情報が変更されていなければ、hashCodeメソッドは常に同じ整数を返す必要があります。 ただし、この整数は同じアプリケーションの実行ごとに同じである必要はありません。
        • equals(Object)メソッドに従って2つのオブジェクトが等しい場合は、2つの各オブジェクトに対するhashCodeメソッドの呼出しによって同じ整数の結果が生成される必要があります。
        • Object.equals(java.lang.Object)メソッドに従って2つのオブジェクトが等しくない場合は、2つの各オブジェクトに対するhashCodeメソッドの呼出しによって異なる整数の結果が生成される必要はありません ただし、プログラマは、等しくないオブジェクトに対して異なる整数の結果を生成すると、ハッシュ表のパフォーマンスが向上する可能性があることに注意するようにしてください。

        クラスObjectによって定義されたhashCodeメソッドは、可能なかぎり、異なるオブジェクトに対して異なる整数を返します。 (hashCodeは、ある時点におけるオブジェクト・メモリー・アドレスの関数として実装されても実装されなくてもよい。)

        オーバーライド:
        hashCode 、クラス:  Object
        戻り値:
        このオブジェクトのハッシュ・コード値。
        関連項目:
        Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)