Class FormAttachment
FormLayout
.
FormAttachments
are set into the top, bottom, left,
and right fields of the FormData
for a control.
For example:
FormData data = new FormData(); data.top = new FormAttachment(0,5); data.bottom = new FormAttachment(100,-5); data.left = new FormAttachment(0,5); data.right = new FormAttachment(100,-5); button.setLayoutData(data);
A FormAttachment
defines where to attach the side of
a control by using the equation, y = ax + b. The "a" term represents
a fraction of the parent composite's width (from the left) or height
(from the top). It can be defined using a numerator and denominator,
or just a percentage value. If a percentage is used, the denominator
is set to 100. The "b" term in the equation represents an offset, in
points, from the attachment position. For example:
FormAttachment attach = new FormAttachment (20, -5);
specifies that the side to which the FormAttachment
object belongs will lie at 20% of the parent composite, minus 5 points.
Control sides can also be attached to another control. For example:
FormAttachment attach = new FormAttachment (button, 10);specifies that the side to which the
FormAttachment
object belongs will lie in the same position as the adjacent side of
the button
control, plus 10 points. The control side can
also be attached to the opposite side of the specified control.
For example:
FormData data = new FormData (); data.left = new FormAttachment (button, 0, SWT.LEFT);specifies that the left side of the control will lie in the same position as the left side of the
button
control. The control can also
be attached in a position that will center the control on the specified
control. For example:
data.left = new FormAttachment (button, 0, SWT.CENTER);specifies that the left side of the control will be positioned so that it is centered between the left and right sides of the
button
control.
If the alignment is not specified, the default is to attach to the adjacent side.- Since:
- 2.0
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionint
alignment specifies the alignment of the control side that is attached to a control.control specifies the control to which the control side is attached.int
denominator specifies the denominator of the "a" term in the equation, y = ax + b, which defines the attachment.int
numerator specifies the numerator of the "a" term in the equation, y = ax + b, which defines the attachment.int
offset specifies the offset, in points, of the control side from the attachment position. -
Constructor Summary
ConstructorDescriptionConstructs a new instance of this class.FormAttachment
(int numerator) Constructs a new instance of this class given a numerator Since no denominator or offset is specified, the default is to treat the numerator as a percentage of the form, with a denominator of 100.FormAttachment
(int numerator, int offset) Constructs a new instance of this class given a numerator and an offset.FormAttachment
(int numerator, int denominator, int offset) Constructs a new instance of this class given a numerator and denominator and an offset.FormAttachment
(Control control) Constructs a new instance of this class given a control.FormAttachment
(Control control, int offset) Constructs a new instance of this class given a control and an offset.FormAttachment
(Control control, int offset, int alignment) Constructs a new instance of this class given a control, an offset and an alignment. -
Method Summary
-
Field Details
-
numerator
public int numeratornumerator specifies the numerator of the "a" term in the equation, y = ax + b, which defines the attachment. -
denominator
public int denominatordenominator specifies the denominator of the "a" term in the equation, y = ax + b, which defines the attachment. The default value is 100. -
offset
public int offsetoffset specifies the offset, in points, of the control side from the attachment position. If the offset is positive, then the control side is offset to the right of or below the attachment position. If it is negative, then the control side is offset to the left of or above the attachment position. This is equivalent to the "b" term in the equation y = ax + b. The default value is 0. -
control
control specifies the control to which the control side is attached. -
alignment
public int alignmentalignment specifies the alignment of the control side that is attached to a control.For top and bottom attachments, TOP, BOTTOM and CENTER are used. For left and right attachments, LEFT, RIGHT and CENTER are used. If any other case occurs, the default will be used instead.
Possible values are:SWT.TOP
: Attach the side to the top side of the specified control.SWT.BOTTOM
: Attach the side to the bottom side of the specified control.SWT.LEFT
: Attach the side to the left side of the specified control.SWT.RIGHT
: Attach the side to the right side of the specified control.SWT.CENTER
: Attach the side at a position which will center the control on the specified control.SWT.DEFAULT
: Attach the side to the adjacent side of the specified control.
-
-
Constructor Details
-
FormAttachment
public FormAttachment()Constructs a new instance of this class. Since no numerator, denominator or offset is specified, the attachment is treated as a percentage of the form. The numerator is zero, the denominator is 100 and the offset is zero.- Since:
- 3.2
-
FormAttachment
public FormAttachment(int numerator) Constructs a new instance of this class given a numerator Since no denominator or offset is specified, the default is to treat the numerator as a percentage of the form, with a denominator of 100. The offset is zero.- Parameters:
numerator
- the percentage of the position- Since:
- 3.0
-
FormAttachment
public FormAttachment(int numerator, int offset) Constructs a new instance of this class given a numerator and an offset. Since no denominator is specified, the default is to treat the numerator as a percentage of the form, with a denominator of 100.- Parameters:
numerator
- the percentage of the positionoffset
- the offset of the side from the position
-
FormAttachment
public FormAttachment(int numerator, int denominator, int offset) Constructs a new instance of this class given a numerator and denominator and an offset. The position of the side is given by the fraction of the form defined by the numerator and denominator.- Parameters:
numerator
- the numerator of the positiondenominator
- the denominator of the positionoffset
- the offset of the side from the position
-
FormAttachment
Constructs a new instance of this class given a control. Since no alignment is specified, the default alignment is to attach the side to the adjacent side of the specified control. Since no offset is specified, an offset of 0 is used.- Parameters:
control
- the control the side is attached to
-
FormAttachment
Constructs a new instance of this class given a control and an offset. Since no alignment is specified, the default alignment is to attach the side to the adjacent side of the specified control.- Parameters:
control
- the control the side is attached tooffset
- the offset of the side from the control
-
FormAttachment
Constructs a new instance of this class given a control, an offset and an alignment. The possible alignment values are:SWT.TOP
- the side will be attached to the top side of the specified control
SWT.BOTTOM
- the side will be attached to the bottom side of the specified control
SWT.LEFT
- the side will be attached to the left side of the specified control
SWT.RIGHT
- the side will be attached to the right side of the specified control
SWT.CENTER
- the side will be centered on the same side of the specified control
SWT.DEFAULT
- the side will be attached to the adjacent side of the specified control
- Parameters:
control
- the control the side is attached tooffset
- the offset of the side from the controlalignment
- the alignment of the side to the control it is attached to, one of TOP, BOTTOM, LEFT, RIGHT, CENTER, or DEFAULT
-
-
Method Details