JavaTM 2 Platform
Standard Ed. 6

java.awt
列舉 Component.BaselineResizeBehavior

java.lang.Object
  繼承者 java.lang.Enum<Component.BaselineResizeBehavior>
      繼承者 java.awt.Component.BaselineResizeBehavior
所有已實作的介面:
Serializable, Comparable<Component.BaselineResizeBehavior>
正在封閉類別:
Component

public static enum Component.BaselineResizeBehavior
extends Enum<Component.BaselineResizeBehavior>

常見方式的列舉,指示元件的基線可以隨大小的更改而更改。基線調整行為主要用於佈局管理器,在元件大小發生更改時,佈局管理器需要知道基線位置的更改方式。通常,在元件大小大於等於最小大小(實際最小大小;不是開發人員指定的最小大小)時,基線調整行為才是有效的。在元件大小小於最小大小的情況下,基線可能以基線調整行為所指示方式之外的某種方式發生更改。類似地,如果大小接近 Integer.MAX_VALUE 和/或 Short.MAX_VALUE,基線可能以基線調整行為所指示方式之外的某種方式發生更改。

從以下版本開始:
1.6
另請參見:
Component.getBaselineResizeBehavior(), Component.getBaseline(int,int)

列舉常數摘要
CENTER_OFFSET
          指示基線與元件的中心保持固定的距離。
CONSTANT_ASCENT
          指示基線相對於 y 原點保持不變。
CONSTANT_DESCENT
          指示基線相對於高度保持不變,且不會隨著寬度不同而發生更改。
OTHER
          指示基線調整行為無法使用其他任何常數表示。
 
方法摘要
static Component.BaselineResizeBehavior valueOf(String name)
          返回帶有指定名稱的該型別的列舉常數。
static Component.BaselineResizeBehavior[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
從類別 java.lang.Enum 繼承的方法
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
從類別 java.lang.Object 繼承的方法
getClass, notify, notifyAll, wait, wait, wait
 

列舉常數詳細資訊

CONSTANT_ASCENT

public static final Component.BaselineResizeBehavior CONSTANT_ASCENT
指示基線相對於 y 原點保持不變。也就是說,無論高度或寬度如何,getBaseline 均返回相同的值。例如,包含使用 TOP 垂直對齊方式的非空(null)文本的 JLabel 應該具有 CONSTANT_ASCENT 基線型別。


CONSTANT_DESCENT

public static final Component.BaselineResizeBehavior CONSTANT_DESCENT
指示基線相對於高度保持不變,且不會隨著寬度不同而發生更改。也就是說,對於任意高度 H,H 和 getBaseline(w, H) 之間的差值是相同的。例如,包含使用 BOTTOM 垂直對齊方式的非空(null)文本的 JLabel 應該具有 CONSTANT_DESCENT 基線型別。


CENTER_OFFSET

public static final Component.BaselineResizeBehavior CENTER_OFFSET
指示基線與元件的中心保持固定的距離。也就是說,對於任意高度 H,getBaseline(w, H)H / 2 之間的差值是相同的(根據捨入誤差加上或減去 1)。

因為可能存在捨入誤差,所以建議通過兩個連續高度請求(計算)基線,並使用返回值來確定計算結果是否需要值為 1 的 pad。以下顯示了如何計算任意高度的基線:

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 final Component.BaselineResizeBehavior[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for(Component.BaselineResizeBehavior c : Component.BaselineResizeBehavior.values())
        System.out.println(c);

返回:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static Component.BaselineResizeBehavior valueOf(String name)
返回帶有指定名稱的該型別的列舉常數。 字元串必須與用於宣告該型別的列舉常數的 標識符完全比對。(不允許有多餘 的空格。)

參數:
指定要返回的列舉常數的名稱。 -
返回:
返回帶有指定名稱的列舉常數
拋出:
如果該列舉型別沒有帶有指定名稱的常數, - 則拋出 IllegalArgumentException

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only