public abstract class Spring extends Object
Springクラスのインスタンスは、その動作を特徴付ける3つのプロパティ(値はminimum、preferred、およびmaximum)を保持します。 各プロパティは、一連の規則に基づいて4番目のプロパティであるvalueの定義に含まれることもあります。
Springクラスのインスタンスは、機械的なスプリングと同様に矯正する力を受けて、推奨値(preferred値)を基準に圧縮されたり引き伸ばされたりします。 矯正力は、推奨値からの距離の1次関数としてモデル化されていますが、圧縮する力と引き伸ばす力に対応する2つの定数が含まれます。 定数は、最小値(minimum値)と最大値(maximum値)です。スプリングが最小値の状態から生成する力は、最大値の状態から生成する力と大きさが等しく、反対方向となります。 したがって、preferred値とminimum値の差はSpringの圧縮しやすさを表し、maximum値とpreferred値の差は引き伸ばしやすさを表します。 詳細は、sum(javax.swing.Spring, javax.swing.Spring)メソッドを参照してください。
Springで簡単な算術演算を定義することにより、Springのコレクションの動作を、通常の(複合ではない) Springの動作と同じレベルまで削減できます。 Springには「+」、「-」、max、およびminの演算子が定義されているため、いずれの場合も、Springは構成するスプリングに対する数学的操作が容易になっています。
Springは、共通点である推奨値(preferred値)を持つ一組の間隔として扱うことができます。 間隔に適用できる算術演算子は、次のような規則によって定義されます。[a, b]は、a <= bの場合のaからbへの間隔です。
[a1, b1] + [a2, b2] = [a1 + a2, b1 + b2]
-[a, b] = [-b, -a]
max([a1, b1], [a2, b2]) = [max(a1, a2), max(b1, b2)]
Springを[a, b, c] (a <= b <= c)と表した場合は、Springに対して同様の算術演算子を定義できます。
[a1, b1, c1] + [a2, b2, c2] = [a1 + a2, b1 + b2, c1 + c2]
-[a, b, c] = [-c, -b, -a]
max([a1, b1, c1], [a2, b2, c2]) = [max(a1, a2), max(b1, b2), max(c1, c2)]
間隔とSpringの両方を使用すると、次のように正負を逆にした「-」とminを定義できます。
X - Y = X + (-Y)
min(X, Y) = -max(-X, -Y)
算術演算子を具現化するこのクラスの静的メソッドでは、実際には、メソッド引数のプロパティ値のスナップショットを取得するような演算を、静的メソッドが呼び出された時点で実行しません。 その代わりに、静的メソッドによって、メソッドの引数への参照を含む新しいSpringインスタンスが作成されるため、作成元のスプリングの特性のうち変更される可能性のある特性は、新しいスプリングの特性によって追跡されます。 これは、関数型言語のlazy valueの考え方に似ています。
SpringLayoutを実装している場合、詳細な情報と例については、『The Java Tutorial』の「How to Use SpringLayout」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートがjava.beansパッケージに追加されています。 XMLEncoderを参照してください。
- 導入されたバージョン:
- 1.4
- 関連項目:
SpringLayout,SpringLayout.Constraints
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static intUNSETプロパティ値が計算されていないことを示す整数値です。 -
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protectedSpring()Springを作成するためにファクトリ・メソッドが使用します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 static Springconstant(int pref)柱(minimum値、preferred値、およびmaximum値がすべて値prefを持つスプリング)を返します。static Springconstant(int min, int pref, int max)minimum値、preferred値、およびmaximum値がそれぞれ値min、pref、およびmaxを持つスプリングを返します。abstract intgetMaximumValue()このSpringのmaximum値を返します。abstract intgetMinimumValue()このSpringのminimum値を返します。abstract intgetPreferredValue()このSpringのpreferred値を返します。abstract intgetValue()このSpringの現在のvalueを返します。static Springheight(Component c)minimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの高さで定義されているスプリングを返します。static Springmax(Spring s1, Spring s2)常にs1とs2のいずれよりも大きいか等しい値を持つスプリングmax(s1, s2)を返します。static Springminus(Spring s)sと反対方向に動くスプリング-sを返します。static Springscale(Spring s, float factor)minimum、preferred、maximum、およびvalueの各プロパティが引数スプリングsのプロパティの倍数になっているスプリングを返します。abstract voidsetValue(int value)このSpringの現在の値をvalueに設定します。static Springsum(Spring s1, Spring s2)s1とs2の直列接続を表すスプリングs1+s2を返します。static Springwidth(Component c)minimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの幅で定義されているスプリングを返します。
-
フィールド詳細
-
コンストラクタの詳細
-
Spring
protected Spring()Springを作成するためにファクトリ・メソッドが使用します。
-
-
メソッドの詳細
-
getMinimumValue
public abstract int getMinimumValue()このSpringのminimum値を返します。- 戻り値:
- この
SpringのminimumValueプロパティ
-
getPreferredValue
public abstract int getPreferredValue()このSpringのpreferred値を返します。- 戻り値:
- この
SpringのpreferredValue
-
getMaximumValue
public abstract int getMaximumValue()このSpringのmaximum値を返します。- 戻り値:
- この
SpringのmaximumValueプロパティ
-
getValue
public abstract int getValue()このSpringの現在のvalueを返します。- 戻り値:
- この
Springのvalueプロパティ - 関連項目:
setValue(int)
-
setValue
public abstract void setValue(int value)このSpringの現在の値をvalueに設定します。- パラメータ:
value-valueプロパティの新しい設定- 関連項目:
getValue()
-
constant
public static Spring constant(int pref)柱(minimum値、preferred値、およびmaximum値がすべて値prefを持つスプリング)を返します。- パラメータ:
pref- 新しいスプリングのminimum値、preferred値、およびmaximum値- 戻り値:
- minimum値、preferred値、およびmaximum値のそれぞれが値
prefを持つスプリング - 関連項目:
Spring
-
constant
public static Spring constant(int min, int pref, int max)minimum値、preferred値、およびmaximum値がそれぞれ値min、pref、およびmaxを持つスプリングを返します。- パラメータ:
min- 新しいスプリングのminimum値pref- 新しいスプリングのpreferred値max- 新しいスプリングのmaximum値- 戻り値:
- minimum値、preferred値、およびmaximum値がそれぞれ値
min、pref、およびmaxを持つスプリング - 関連項目:
Spring
-
minus
sと反対方向に動くスプリング-sを返します。- パラメータ:
s-Springオブジェクト- 戻り値:
- スプリング
sと反対方向に動くスプリング-s - 関連項目:
Spring
-
sum
s1とs2の直列接続を表すスプリングs1+s2を返します。 2つのスプリングs1とs2のsumであるs3では、s1、s2、およびs3の力は、整数valueの精度内で同じレベルに維持されます。 圧縮時のスプリングの力は、次のようになります。value - pref ------------ pref - min引っ張られているときのスプリングの力は、次のようになります。value - pref ------------ max - prefsetValueがsumスプリングs3で呼び出されると、s3の力は上記のどれかの式を使って計算されます。 sumの力が算出されると、s1とs2のvalueはsumの力と等しくなるように設定されます。 式の評価には丸め誤差が考慮され、s1とs2のvalueのsumはs3のvalueと正確に等しくなります。- パラメータ:
s1-Springオブジェクトs2-Springオブジェクト- 戻り値:
s1とs2の直列接続を表すスプリングs1+s2- 関連項目:
Spring
-
max
常にs1とs2のいずれよりも大きいか等しい値を持つスプリングmax(s1, s2)を返します。- パラメータ:
s1-Springオブジェクトs2-Springオブジェクト- 戻り値:
- 常に
s1とs2の両方よりも大きいか等しい値を持つスプリングmax(s1, s2) - 関連項目:
Spring
-
scale
minimum、preferred、maximum、およびvalueの各プロパティが引数スプリングsのプロパティの倍数になっているスプリングを返します。factorが負の値(間隔の算術式の規則に従って)の場合、最大値と最小値のプロパティは入れ替わります。たとえば、係数が0.5fの場合、結果はその入力値の「中間点」を表し、コンテナ内でコンポーネントを中央に配置するのに役立ちます。
- パラメータ:
s- スケーリングするスプリングfactor- スケーリングの量。- 戻り値:
- プロパティが、入力スプリング
sのプロパティにfactorをかけた値になっているスプリング - 例外:
NullPointerException-sがnullである場合- 導入されたバージョン:
- 1.5
-
width
minimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの幅で定義されているスプリングを返します。 返されるスプリングは「ラッパー」の実装であり、そのメソッドによって、指定されたコンポーネントのそれぞれのサイズ・メソッドが呼び出されます。 したがって、返されたスプリングの最大値、推奨値、最小値、および値の各プロパティによって、コンポーネントのそれぞれのプロパティの現在の状態が報告され、それらのプロパティが変更に伴って追跡されます。- パラメータ:
c- サイズの計算に使用されるコンポーネント- 戻り値:
- プロパティが、コンポーネントのサイズ・メソッドの水平方向のコンポーネントによって定義されているスプリング。
- 例外:
NullPointerException-cがnullである場合- 導入されたバージョン:
- 1.5
-
height
minimum、preferred、maximum、およびvalueの各プロパティが、それぞれ指定されたコンポーネントのminimumSize、preferredSize、maximumSize、およびsizeの各プロパティの高さで定義されているスプリングを返します。 返されるスプリングは「ラッパー」の実装であり、そのメソッドによって、指定されたコンポーネントのそれぞれのサイズ・メソッドが呼び出されます。 したがって、返されたスプリングの最大値、推奨値、最小値、および値の各プロパティによって、コンポーネントのそれぞれのプロパティの現在の状態が報告され、それらのプロパティが変更に伴って追跡されます。- パラメータ:
c- サイズの計算に使用されるコンポーネント- 戻り値:
- プロパティが、コンポーネントのサイズ・メソッドの垂直方向のコンポーネントによって定義されているスプリング。
- 例外:
NullPointerException-cがnullである場合- 導入されたバージョン:
- 1.5
-