モジュール java.desktop
パッケージ javax.swing

クラスSizeRequirements

  • すべての実装されたインタフェース:
    Serializable


    public class SizeRequirements
    extends Object
    implements Serializable
    レイアウト・マネージャの便宜のために、コンポーネントのサイズと位置についての情報を計算します。 サイズと位置のすべての計算メソッドは、SizeRequirementsの配列を引数として取得するクラス・メソッドです。 SizeRequirementsクラスは2種類のレイアウトをサポートします。
    tiled
    コンポーネントは座標0 (左端または上端)から始まって両端揃えで配置されるか、あるいは割り当てられたスパンの端を表す座標(右端または下端)から始まって両端揃えで配置される。
    aligned
    コンポーネントはそれぞれの揃え方の値(XまたはY)に基づいて整列される。

    各SizeRequirementsオブジェクトは、1つのコンポーネントまたは複数のコンポーネントの幅(とX揃え)または高さ(とY揃え)のどちらかについての情報を保持します。

    minimum
    コンポーネントまたはコンポーネント・グループの適度な最小の幅および高さ(ピクセル単位)。
    preferred
    コンポーネントまたはコンポーネント・グループの本来の幅および高さ(ピクセル単位)。
    maximum
    コンポーネントまたはコンポーネント・グループの適度な最大の幅および高さ(ピクセル単位)。
    alignment
    コンポーネントまたはコンポーネント・グループのXおよびY揃え。

    警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースとの互換性がなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートがjava.beansパッケージに追加されています。 XMLEncoderを参照してください。

    導入されたバージョン:
    1.2
    関連項目:
    Component.getMinimumSize(), Component.getPreferredSize(), Component.getMaximumSize(), Component.getAlignmentX(), Component.getAlignmentY(), 「直列化されたフォーム」
    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      float alignment
      0.0と1.0の間の値(上下限値を含む)で指定される配置です。
      int maximum
      可能な最大サイズです。
      int minimum
      必要とされる最小サイズです。
      int preferred
      適切な(本来の)サイズです。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      SizeRequirements​()
      最小サイズ、適切なサイズ、最大サイズをゼロに、配置の値を0.5 (中央揃え)に設定して、SizeRequirementsオブジェクトを作成します。
      SizeRequirements​(int min, int pref, int max, float a)
      指定された最小サイズ、適切なサイズ、最大サイズ、および配置で、SizeRequirementsオブジェクトを作成します。
    • フィールドの詳細

      • 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​()
        最小サイズ、適切なサイズ、最大サイズをゼロに、配置の値を0.5 (中央揃え)に設定して、SizeRequirementsオブジェクトを作成します。
      • SizeRequirements

        public SizeRequirements​(int min,
                                int pref,
                                int max,
                                float a)
        指定された最小サイズ、適切なサイズ、最大サイズ、および配置で、SizeRequirementsオブジェクトを作成します。
        パラメータ:
        min - 最小サイズ>= 0
        pref - 適切なサイズ>= 0
        max - 最大サイズ>= 0
        a - 配置>= 0.0f && <= 1.0f
    • メソッドの詳細

      • toString

        public String toString​()
        最小サイズ、適切なサイズ、最大サイズの要件を記述する文字列を、配置と一緒に返します。
        オーバーライド:
        toString、クラス: Object
        戻り値:
        文字列
      • getTiledSizeRequirements

        public static SizeRequirements getTiledSizeRequirements​(SizeRequirements[] children)
        コンポーネントのセットを端から端まで配置するのに必要な合計スペースを判定します。 その各コンポーネントの必要事項は、渡されたSizeRequirements配列のエントリによって表現されます。 返されたSizeRequirementsオブジェクトは、0.5 (中央揃え)という配置の値を持ちます。 スペース要件は、Integer.MAX_VALUEより大きくはなりません。
        パラメータ:
        children - コンポーネントのセットのスペース要件。 ベクトルの長さはゼロでもよく、その場合はデフォルトのSizeRequirementsオブジェクトのインスタンスが渡される。
        戻り値:
        合計スペースの要件。
      • getAlignedSizeRequirements

        public static SizeRequirements getAlignedSizeRequirements​(SizeRequirements[] children)
        コンポーネントのセットを配置するのに必要な合計スペースを判定します。 その各コンポーネントの必要事項は、渡されたSizeRequirements配列のエントリによって表現されます。 必要な合計スペースは、Integer.MAX_VALUEより大きくはなりません。
        パラメータ:
        children - 子の要件のセット。 長さが0の場合、SizeRequirementsのデフォルト・インスタンスが返される。
        戻り値:
        合計スペースの要件。
      • calculateTiledPositions

        public static void calculateTiledPositions​(int allocated,
                                                   SizeRequirements total,
                                                   SizeRequirements[] children,
                                                   int[] offsets,
                                                   int[] spans)
        コンポーネントのセットを端から端までレイアウトする方法を表す、多くのオフセット/スパンのペアを作成します。 このメソッドは、割当てスペース量の合計、配置する各コンポーネントのサイズ要件(SizeRequirementsの配列で指定される)、コンポーネント・セットの合計サイズの要件をユーザーが指定することを要求します。 合計サイズの要件を取得するには、getTiledSizeRequirementsメソッドを呼び出します。 コンポーネントは、0からオフセット分を増やしながら順方向にタイリングされます。
        パラメータ:
        allocated - 割り当てる合計スパン>= 0。
        total - 子の要求の合計。 この引数はオプションであり、nullの場合がある。
        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 - 子の要求の合計。 この引数はオプションであり、nullの場合がある。
        children - 各コンポーネントのサイズ要件。
        offsets - スパンが割り当てられた各子の0からのオフセット(スパンの配置を指定する)。
        spans - 各子に割り当てられたスパンで、合計ターゲット・スパンを構成する。
        forward - trueの場合、0からオフセット分増やしながらタイリングし、falseの場合、割当てスペースの端からオフセット分減らしながらタイリングする。
        導入されたバージョン:
        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 - trueの場合、配置の値0.0fは左上端を示し、falseの場合は右下端を示す。
        導入されたバージョン:
        1.4
      • adjustSizes

        public static int[] adjustSizes​(int delta,
                                        SizeRequirements[] children)
        指定された量で、指定された配列のサイズを調整します。
        パラメータ:
        delta - サイズの差を表すint値
        children - SizeRequirementsオブジェクトの配列
        戻り値:
        各項目の最終サイズが格納されているintの配列