public static enum Component.BaselineResizeBehavior extends Enum<Component.BaselineResizeBehavior>
Integer.MAX_VALUE
やShort.MAX_VALUE
に近づくと、ベースラインのサイズ変更動作で示される方法とは異なる方法でベースラインが変化することがあります。Component.getBaselineResizeBehavior()
, Component.getBaseline(int,int)
列挙型定数と説明 |
---|
CENTER_OFFSET
コンポーネントの中心からベースラインまでの距離が固定となることを示します。
|
CONSTANT_ASCENT
ベースラインがy原点に対して固定となることを示します。
|
CONSTANT_DESCENT
ベースラインが高さに対して固定となり、幅が変化しても変化しないことを示します。
|
OTHER
ベースラインのサイズ変更動作をほかの定数で表現できないことを示します。
|
修飾子と型 | メソッドと説明 |
---|---|
static Component.BaselineResizeBehavior |
valueOf(String name)
指定された名前を持つ、この型の列挙型定数を返します。
|
static Component.BaselineResizeBehavior[] |
values()
この列挙型の定数を含む配列を、宣言されている順序で返します。
|
public static final Component.BaselineResizeBehavior CONSTANT_ASCENT
getBaseline
が同じ値を返します。たとえば、JLabel
に空でないテキストが含まれ、その垂直の配置方法がTOP
である場合、そのベースライン・タイプはCONSTANT_ASCENT
になります。public static final Component.BaselineResizeBehavior CONSTANT_DESCENT
getBaseline(w, H)
の差が一定になります。たとえば、JLabel
に空でないテキストが含まれ、その垂直の配置方法がBOTTOM
である場合、そのベースライン・タイプはCONSTANT_DESCENT
になります。public static final Component.BaselineResizeBehavior CENTER_OFFSET
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;
public static final Component.BaselineResizeBehavior OTHER
public static Component.BaselineResizeBehavior[] values()
for (Component.BaselineResizeBehavior c : Component.BaselineResizeBehavior.values()) System.out.println(c);
public static Component.BaselineResizeBehavior valueOf(String name)
name
- 返される列挙型定数の名前。IllegalArgumentException
- 指定された名前を持つ定数をこの列挙型が持っていない場合NullPointerException
- 引数がnullの場合 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.