|
Java™ Platform Standard Ed. 6 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.swing.SpringLayout.Constraints
public static class SpringLayout.Constraints
A Constraints object holds the
constraints that govern the way a component's size and position
change in a container controlled by a SpringLayout.
A Constraints object is
like a Rectangle, in that it
has x, y,
width, and height properties.
In the Constraints object, however,
these properties have
Spring values instead of integers.
In addition,
a Constraints object
can be manipulated as four edges
-- north, south, east, and west --
using the constraint property.
The following formulas are always true
for a Constraints object (here WEST and x are synonyms, as are and NORTH and y):
EAST = WEST + WIDTH
SOUTH = NORTH + HEIGHT
HORIZONTAL_CENTER = WEST + WIDTH/2
VERTICAL_CENTER = NORTH + HEIGHT/2
ABSOLUTE_BASELINE = NORTH + RELATIVE_BASELINE*
For example, if you have specified the WIDTH and WEST (X) location the EAST is calculated as WEST + WIDTH. If you instead specified the WIDTH and EAST locations the WEST (X) location is then calculated as EAST - WIDTH.
[RELATIVE_BASELINE is a private constraint that is set automatically when the SpringLayout.Constraints(Component) constuctor is called or when a constraints object is registered with a SpringLayout object.]
Note: In this document,
operators represent methods
in the Spring class.
For example, "a + b" is equal to
Spring.sum(a, b),
and "a - b" is equal to
Spring.sum(a, Spring.minus(b)).
See the
for further details
of spring arithmetic.
Spring API documentation
Because a Constraints object's properties --
representing its edges, size, and location -- can all be set
independently and yet are interrelated,
a Constraints object can become over-constrained.
For example, if the WEST, WIDTH and
EAST edges are all set, steps must be taken to ensure that
the first of the formulas above holds. To do this, the
Constraints
object throws away the least recently set
constraint so as to make the formulas hold.
| Constructor Summary | |
|---|---|
SpringLayout.Constraints()
Creates an empty Constraints object. |
|
SpringLayout.Constraints(Component c)
Creates a Constraints object with
suitable x, y, width and
height springs for component, c. |
|
SpringLayout.Constraints(Spring x,
Spring y)
Creates a Constraints object with the
specified values for its
x and y properties. |
|
SpringLayout.Constraints(Spring x,
Spring y,
Spring width,
Spring height)
Creates a Constraints object with the
specified values for its
x, y, width,
and height properties. |
|
| Method Summary | |
|---|---|
Spring |
getConstraint(String edgeName)
Returns the value of the specified edge, which may be a derived value, or even null. |
Spring |
getHeight()
Returns the value of the height property. |
Spring |
getWidth()
Returns the value of the width property. |
Spring |
getX()
Returns the value of the x property. |
Spring |
getY()
Returns the value of the y property. |
void |
setConstraint(String edgeName,
Spring s)
Sets the spring controlling the specified edge. |
void |
setHeight(Spring height)
Sets the height property,
which controls the height of a component. |
void |
setWidth(Spring width)
Sets the width property,
which controls the width of a component. |
void |
setX(Spring x)
Sets the x property,
which controls the x value
of a component's location. |
void |
setY(Spring y)
Sets the y property,
which controls the y value
of a component's location. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SpringLayout.Constraints()
Constraints object.
public SpringLayout.Constraints(Spring x,
Spring y)
Constraints object with the
specified values for its
x and y properties.
The height and width springs
have null values.
x - the spring controlling the component's x valuey - the spring controlling the component's y value
public SpringLayout.Constraints(Spring x,
Spring y,
Spring width,
Spring height)
Constraints object with the
specified values for its
x, y, width,
and height properties.
Note: If the SpringLayout class
encounters null values in the
Constraints object of a given component,
it replaces them with suitable defaults.
x - the spring value for the x propertyy - the spring value for the y propertywidth - the spring value for the width propertyheight - the spring value for the height propertypublic SpringLayout.Constraints(Component c)
Constraints object with
suitable x, y, width and
height springs for component, c.
The x and y springs are constant
springs initialised with the component's location at
the time this method is called. The width and
height springs are special springs, created by
the Spring.width() and Spring.height()
methods, which track the size characteristics of the component
when they change.
c - the component whose characteristics will be reflected by this Constraints object
NullPointerException - if c is null.| Method Detail |
|---|
public void setX(Spring x)
x property,
which controls the x value
of a component's location.
x - the spring controlling the x value
of a component's locationgetX(),
SpringLayout.Constraintspublic Spring getX()
x property.
x value
of a component's locationsetX(javax.swing.Spring),
SpringLayout.Constraintspublic void setY(Spring y)
y property,
which controls the y value
of a component's location.
y - the spring controlling the y value
of a component's locationgetY(),
SpringLayout.Constraintspublic Spring getY()
y property.
y value
of a component's locationsetY(javax.swing.Spring),
SpringLayout.Constraintspublic void setWidth(Spring width)
width property,
which controls the width of a component.
width - the spring controlling the width of this
Constraints objectgetWidth(),
SpringLayout.Constraintspublic Spring getWidth()
width property.
setWidth(javax.swing.Spring),
SpringLayout.Constraintspublic void setHeight(Spring height)
height property,
which controls the height of a component.
height - the spring controlling the height of this Constraints
objectgetHeight(),
SpringLayout.Constraintspublic Spring getHeight()
height property.
setHeight(javax.swing.Spring),
SpringLayout.Constraints
public void setConstraint(String edgeName,
Spring s)
SpringLayout.NORTH,
SpringLayout.SOUTH,
SpringLayout.EAST,
SpringLayout.WEST,
SpringLayout.HORIZONTAL_CENTER,
SpringLayout.VERTICAL_CENTER,
SpringLayout.BASELINE,
SpringLayout.WIDTH or
SpringLayout.HEIGHT.
For any other String value passed as the edge,
no action is taken. For a null edge, a
NullPointerException is thrown.
edgeName - the edge to be sets - the spring controlling the specified edge
NullPointerException - if edgeName is nullgetConstraint(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.
The edge must have one of the following values:
SpringLayout.NORTH,
SpringLayout.SOUTH,
SpringLayout.EAST,
SpringLayout.WEST,
SpringLayout.HORIZONTAL_CENTER,
SpringLayout.VERTICAL_CENTER,
SpringLayout.BASELINE,
SpringLayout.WIDTH or
SpringLayout.HEIGHT.
For any other String value passed as the edge,
null will be returned. Throws
NullPointerException for a null edge.
edgeName - the edge whose value
is to be returned
null
NullPointerException - if edgeName is nullsetConstraint(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
|
Java™ Platform Standard Ed. 6 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.