public static class SpringLayout.Constraints extends Object
Constraintsオブジェクトは、SpringLayoutが制御するコンテナ内のコンポーネントのサイズ変更方法および位置変更方法を決定する制約を保持します。 ConstraintsオブジェクトにはRectangleと同様にx、y、width、およびheightの各プロパティがあります。 ただし、Constraintsオブジェクトの各プロパティは、整数ではなくSpring値です。 また、Constraintsオブジェクトは、constraintプロパティを使用して、north、south、east、およびwestの4個のエッジとして操作できます。
次の式は、Constraintsオブジェクトに対して常にtrueになります。この場合、WESTとxが同義、NORTHとyが同義になります。
EAST = WEST + WIDTH
SOUTH = NORTH + HEIGHT
HORIZONTAL_CENTER = WEST + WIDTH/2
VERTICAL_CENTER = NORTH + HEIGHT/2
ABSOLUTE_BASELINE = NORTH + RELATIVE_BASELINE*
たとえば、WIDTHとWEST (X)の位置を指定した場合、EASTを求める式はWEST+WIDTHになります。 一方、WIDTHとEASTの位置を指定した場合、WEST (X)を求める式はEAST - WIDTHになります。
[RELATIVE_BASELINEは、SpringLayout.Constraints(Component)コンストラクタが呼び出されたとき、または制約オブジェクトがSpringLayoutオブジェクトに登録されたときに自動的に設定されるprivateの制約です。]
ノート: 本書では、演算子はSpringクラスのメソッドを表します。 たとえば、「a+b」はSpring.sum(a, b)を示し、「a - b」はSpring.sum(a, Spring.minus(b))を示します。 スプリング演算の詳細は、SpringのAPIドキュメントを参照してください。
エッジ、サイズ、および位置を表すConstraintsオブジェクトのプロパティはすべて独立して設定できますが、相互に関係しているため、Constraintsオブジェクトが過剰な制約を受けることがあります。 たとえば、WEST、WIDTH、およびEASTのエッジがすべて設定された場合は、前述の1つめの式を保持する必要があります。 このために、Constraintsオブジェクトはもっとも前に設定された制約を廃棄して、その式を保持します。
| コンストラクタ | 説明 |
|---|---|
Constraints() |
空の
Constraintsオブジェクトを作成します。 |
Constraints(Component c) |
コンポーネント
cに適したスプリング(x、y、width、およびheight)を使用して、Constraintsオブジェクトを作成します。 |
Constraints(Spring x, Spring y) |
xプロパティとyプロパティの値を指定して、Constraintsオブジェクトを作成します。 |
Constraints(Spring x, Spring y, Spring width, Spring height) |
x、y、width、heightの各プロパティの値を指定して、Constraintsオブジェクトを作成します。 |
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
Spring |
getConstraint(String edgeName) |
指定されたエッジの値(派生した値、または
nullの場合もある)を返します。 |
Spring |
getHeight() |
heightプロパティの値を返します。 |
Spring |
getWidth() |
widthプロパティの値を返します。 |
Spring |
getX() |
xプロパティの値を返します。 |
Spring |
getY() |
yプロパティの値を返します。 |
void |
setConstraint(String edgeName, Spring s) |
指定されたエッジを制御するスプリングを設定します。
|
void |
setHeight(Spring height) |
コンポーネントの高さを制御する
heightプロパティを設定します。 |
void |
setWidth(Spring width) |
コンポーネントの幅を制御する
widthプロパティを設定します。 |
void |
setX(Spring x) |
コンポーネントの位置の
x値を制御するxプロパティを設定します。 |
void |
setY(Spring y) |
コンポーネントの位置の
y値を制御するyプロパティを設定します。 |
public Constraints()
Constraintsオブジェクトを作成します。public Constraints(Spring x, Spring y)
xプロパティとyプロパティの値を指定して、Constraintsオブジェクトを作成します。 heightスプリングとwidthスプリングはnull値です。 x - コンポーネントのx値を制御するスプリングy - コンポーネントのy値を制御するスプリングpublic Constraints(Spring x, Spring y, Spring width, Spring height)
x、y、width、heightの各プロパティの値を指定して、Constraintsオブジェクトを作成します。 ノート: 指定されたコンポーネントのConstraintsオブジェクトで、SpringLayoutクラスにnull値が設定された場合、null値は適切なデフォルト値に置換されます。 x - xプロパティのスプリング値y - yプロパティのスプリング値width - widthプロパティのスプリング値height - heightプロパティのスプリング値public Constraints(Component c)
cに適したスプリング(x、y、width、およびheight)を使用して、Constraintsオブジェクトを作成します。 xおよびyの各スプリングは、このメソッドが呼び出されたときにコンポーネントの位置で初期化される定数スプリングです。 widthおよびheightの各スプリングは、Spring.width()およびSpring.height()メソッドによって作成される特殊なスプリングで、コンポーネントのサイズ特性をその変更に伴って追跡します。 c - このConstraintsオブジェクトによって特性が反映されるコンポーネントNullPointerException - cがnullである場合。public void setX(Spring x)
x値を制御するxプロパティを設定します。x - コンポーネントの位置のxの値を制御するスプリングgetX(), SpringLayout.Constraintspublic Spring getX()
xプロパティの値を返します。xの値を制御するスプリングsetX(javax.swing.Spring), SpringLayout.Constraintspublic void setY(Spring y)
y値を制御するyプロパティを設定します。y - コンポーネントの位置のyの値を制御するスプリングgetY(), SpringLayout.Constraintspublic Spring getY()
yプロパティの値を返します。yの値を制御するスプリングsetY(javax.swing.Spring), SpringLayout.Constraintspublic void setWidth(Spring width)
widthプロパティを設定します。width - このConstraintsオブジェクトの幅を制御するスプリングgetWidth(), SpringLayout.Constraintspublic Spring getWidth()
widthプロパティの値を返します。setWidth(javax.swing.Spring), SpringLayout.Constraintspublic void setHeight(Spring height)
heightプロパティを設定します。height - このConstraintsオブジェクトの高さを制御するスプリングgetHeight(), SpringLayout.Constraintspublic Spring getHeight()
heightプロパティの値を返します。setHeight(javax.swing.Spring), SpringLayout.Constraintspublic void setConstraint(String edgeName, Spring s)
SpringLayout.NORTH、SpringLayout.SOUTH、SpringLayout.EAST、SpringLayout.WEST、SpringLayout.HORIZONTAL_CENTER、SpringLayout.VERTICAL_CENTER、SpringLayout.BASELINE、SpringLayout.WIDTH、またはSpringLayout.HEIGHTのいずれかの値が設定されている必要があります。 その他のString値がエッジとして渡された場合は、何も行われません。 エッジとしてnullが渡された場合、NullPointerExceptionがスローされます。
ノート: このメソッドは、このConstraintsにあらかじめ設定されたxおよびyの値に影響を及ぼす場合があります。
edgeName - 設定されるエッジs - 指定されたエッジを制御するスプリングNullPointerException - edgeNameがnullである場合getConstraint(java.lang.String), SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.EAST, SpringLayout.WEST, SpringLayout.HORIZONTAL_CENTER, SpringLayout.VERTICAL_CENTER, SpringLayout.BASELINE, SpringLayout.WIDTH, SpringLayout.HEIGHT, SpringLayout.Constraintspublic Spring getConstraint(String edgeName)
nullの場合もある)を返します。 エッジには、SpringLayout.NORTH、SpringLayout.SOUTH、SpringLayout.EAST、SpringLayout.WEST、SpringLayout.HORIZONTAL_CENTER、SpringLayout.VERTICAL_CENTER、SpringLayout.BASELINE、SpringLayout.WIDTH、またはSpringLayout.HEIGHTのいずれかの値が設定されている必要があります。 その他のString値がエッジとして渡された場合は、nullが返されます。 エッジとしてnullが渡された場合、NullPointerExceptionがスローされます。 edgeName - 値が返されるエッジnullの場合もあるNullPointerException - edgeNameがnullである場合setConstraint(java.lang.String, javax.swing.Spring), SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.EAST, SpringLayout.WEST, SpringLayout.HORIZONTAL_CENTER, SpringLayout.VERTICAL_CENTER, SpringLayout.BASELINE, SpringLayout.WIDTH, SpringLayout.HEIGHT, SpringLayout.Constraints バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。