モジュール java.desktop
パッケージ java.awt

列挙型クラスComponent.BaselineResizeBehavior

java.lang.Object
java.lang.Enum<Component.BaselineResizeBehavior>
java.awt.Component.BaselineResizeBehavior
すべての実装されたインタフェース:
Serializable, Comparable<Component.BaselineResizeBehavior>, Constable
含まれているクラス:
Component

public static enum Component.BaselineResizeBehavior extends Enum<Component.BaselineResizeBehavior>
コンポーネントのサイズが変化するにつれてベースラインが変化する共通の方法を列挙します。 ベースラインのサイズ変更動作は、コンポーネントのサイズが変化するにつれてベースラインの位置がどのように変化するかを知るために、主にレイアウト・マネージャで使用されます。 一般に、ベースラインのサイズ変更動作は、最小サイズ(開発者が指定した最小サイズではなく、実際の最小サイズ)以上のサイズに対して有効になります。 サイズが最小サイズより小さい場合、ベースラインのサイズ変更動作で示される方法とは異なる方法でベースラインが変化することがあります。 同様に、サイズがInteger.MAX_VALUEShort.MAX_VALUEに近づくと、ベースラインのサイズ変更動作で示される方法とは異なる方法でベースラインが変化することがあります。
導入されたバージョン:
1.6
関連項目:
  • 列挙型定数の詳細

    • CONSTANT_ASCENT

      public static final Component.BaselineResizeBehavior CONSTANT_ASCENT
      ベースラインがy原点に対して固定となることを示します。 つまり、高さや幅にかかわらず、getBaselineが同じ値を返します。 たとえば、JLabelに空でないテキストが含まれ、その垂直の配置方法がTOPである場合、そのベースライン・タイプはCONSTANT_ASCENTになります。
    • CONSTANT_DESCENT

      public static final Component.BaselineResizeBehavior CONSTANT_DESCENT
      ベースラインが高さに対して固定となり、幅が変化しても変化しないことを示します。 つまり、任意の高さHに対して、HとgetBaseline(w, H)の差が一定になります。 たとえば、JLabelに空でないテキストが含まれ、その垂直の配置方法がBOTTOMである場合、そのベースライン・タイプはCONSTANT_DESCENTになります。
    • CENTER_OFFSET

      public static final Component.BaselineResizeBehavior CENTER_OFFSET
      コンポーネントの中心からベースラインまでの距離が固定となることを示します。 つまり、任意の高さHに対して、getBaseline(w, H)H /2の差が一定(丸め誤差±1)になります。

      丸め誤差の可能性があるため、計算値に1を追加する必要があるかどうかを調べるために、連続する2つの高さでベースラインを要求し、その戻り値で判定することをお薦めします。 次のコードは、任意の高さについてベースラインを計算する方法を示します。

         Dimension preferredSize = component.getPreferredSize();
         int baseline = getBaseline(preferredSize.width,
                                    preferredSize.height);
         int nextBaseline = getBaseline(preferredSize.width,
                                        preferredSize.height + 1);
         // Amount to add to height when calculating where baseline
         // lands for a particular height:
         int padding = 0;
         // Where the baseline is relative to the mid point
         int baselineOffset = baseline - height / 2;
         if (preferredSize.height % 2 == 0 &&
             baseline != nextBaseline) {
             padding = 1;
         }
         else if (preferredSize.height % 2 == 1 &&
                  baseline == nextBaseline) {
             baselineOffset--;
             padding = 1;
         }
         // The following calculates where the baseline lands for
         // the height z:
         int calculatedBaseline = (z + padding) / 2 + baselineOffset;
       

    • OTHER

      public static final Component.BaselineResizeBehavior OTHER
      ベースラインのサイズ変更動作をほかの定数で表現できないことを示します。 また、コンポーネントの幅に応じてベースラインが変化することを示す場合もあります。 ベースラインを持たないコンポーネントも、この値を返します。
  • メソッドの詳細

    • values

      public static Component.BaselineResizeBehavior[] values()
      この列挙クラスの定数を含む配列を宣言されている順序で 返します。
      戻り値:
      この列挙クラスの定数を宣言されている順序で含む配列
    • valueOf

      public static Component.BaselineResizeBehavior valueOf(String name)
      指定された名前を持つこのクラスのenum定数を返します。 文字列は、このクラスでenum定数を宣言するために使用される識別子とexactlyと一致する必要があります。 (不適切な空白文字は許可されません。)
      パラメータ:
      name - 返される列挙型定数の名前。
      戻り値:
      指定された名前を持つ列挙型定数
      例外:
      IllegalArgumentException - この列挙型クラスに指定された名前の定数がない場合
      NullPointerException - 引数がnullの場合