|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Component
Component
is the foundation of all visual objects in the framework. A visual object is one that
offers a user interface that can be displayed and interacted with by a user. The common
capabilities of all visual objects are defined by this object. This includes methods for setting
and getting common spatial and focus properites as well as support for adding event listeners
that receive notification of property and keypress state changes.
Since Component is an interface, you do not actually create an instance of it directly, instead you create an instance of
one of its sub-classes, such as Button
, TextField
or Label
.
Keyboard Navigation:
KEY | RESPONSE | NOTE |
Tab | Transitions to the next focus capable Component | See setFocus(boolean) for details. |
Shift-Tab | Transitions to the prior focus capable Component | See setFocus(boolean) for details. |
Field Summary | |
---|---|
static java.lang.String |
ACTION_CLICK
Contains the formal action name for a click performed on a Component . |
static java.lang.String |
ACTION_DOUBLE_CLICK
Contains the formal action name for a double click performed on a Component . |
static java.lang.String |
PROPERTY_ENABLED
Contains the formal property name for the enabled state of a Component . |
static java.lang.String |
PROPERTY_FOCUS
Contains the formal property name for the focus state of a Component . |
static java.lang.String |
PROPERTY_FOCUS_CAPABLE
Contains the formal property name for the focus capability of a Component . |
static java.lang.String |
PROPERTY_HEIGHT
Contains the formal property name for the height of a Component . |
static java.lang.String |
PROPERTY_LIMIT
Contains the formal property name for the layout manager limit of a component. |
static java.lang.String |
PROPERTY_USER_OBJECT
Contains the formal property name for the user object of a Component . |
static java.lang.String |
PROPERTY_VISIBLE
Contains the formal property name for the visible state of a Component . |
static java.lang.String |
PROPERTY_WIDTH
Contains the formal property name for the width of a Component . |
static java.lang.String |
PROPERTY_X
Contains the formal property name for the 'X' coordinate of a Component . |
static java.lang.String |
PROPERTY_Y
Contains the formal property name for the 'Y' coordinate of a Component . |
Method Summary | |
---|---|
void |
addActionListener(java.lang.String[] actions,
ActionListener listener)
Adds a ActionListener to this component that will be notified when any of the specified actions occur. |
void |
addActionListener(java.lang.String action,
ActionListener listener)
Adds a ActionListener to this component that will be notified when the specified action occurs. |
void |
addDropListener(Component[] dragSources,
DropListener listener)
|
void |
addDropListener(Component dragSource,
DropListener listener)
|
void |
addKeyPressListener(java.lang.String[] keyPressCombos,
KeyPressListener listener)
Adds a KeyPressListener that will be notified when any of the specified key press combinations occur. |
void |
addKeyPressListener(java.lang.String keyPressCombo,
KeyPressListener listener)
Adds a KeyPressListener that will be notified when the specified key press combination occurs. |
void |
addPropertyChangeListener(java.lang.String[] propertyNames,
PropertyChangeListener listener)
Adds a PropertyChangeListener to this component that will be notified when any of the specified properties
change. |
void |
addPropertyChangeListener(java.lang.String propertyName,
PropertyChangeListener listener)
Adds a PropertyChangeListener to this componetn that will be notified when the specified property changes. |
void |
fireAction(ActionEvent ev)
Programmatically signals an action which triggers the appropriate listener which calls the desired method. |
void |
fireAction(java.lang.String action)
A convenience method that is equal to this.fireAction(new ActionEvent(this, action)); |
void |
fireAction(java.lang.String action,
java.lang.Object source)
A convenience method that is equal to this.fireAction(new ActionEvent(this, action)); |
void |
fireDrop(Component dragComponent)
|
void |
fireDrop(Component dragComponent,
java.lang.Object dragObject)
|
void |
fireDrop(DropEvent ev)
|
void |
fireKeyPress(KeyPressEvent ev)
Allows you to programmatically trigger a key press combination. |
void |
fireKeyPress(java.lang.String keyPressCombo)
A convenience method that is equal to this.fireKeyPress(new KeyPressEvent(keyPressCombo, this)); |
Container |
getContainer()
Returns the parent Container of this Component . |
int |
getHeight()
Returns the height of this Component . |
Label |
getLabel()
Returns the Label assigned to this Component . |
java.lang.Object |
getLimit()
Gets the layout limit that controls the bounds of this component within the context of the parent Container 's layout. |
java.lang.Object |
getParent()
Returns the parent Object of this Component . |
Style |
getStyle()
Returns a Style object representing this Component 's current style settings. |
java.lang.Object |
getUserObject()
Returns the user defined Object for this Component . |
int |
getWidth()
Returns the width of this Component . |
int |
getX()
Returns the X coordinate of this Component . |
int |
getY()
Returns the Y coordinate of this Component . |
boolean |
isEnabled()
Returns whether this Component is enabled and therefore supports user interaction. |
boolean |
isFocus()
Returns whether this Component has the input focus. |
boolean |
isFocusCapable()
Returns whether this Component supports gaining focus. |
boolean |
isVisible()
Returns a boolean value indicating whether this Component may be displayed in a window. |
void |
removeActionListener(ActionListener listener)
Unregister an ActionListener from all action event notifications from this component. |
void |
removeDropListener(DropListener listener)
|
void |
removeKeyPressListener(KeyPressListener listener)
Removes the specified KeyPressListener from the component. |
void |
removePropertyChangeListener(PropertyChangeListener listener)
Removes the specified PropertyChangeListener from the component. |
Component |
setBounds(int x,
int y,
int width,
int height)
Assigns the specified width, height, X and Y values to this Component atomically, in one operation. |
void |
setEnabled(boolean enabled)
Assigns whether this Component is enabled and therefore supports user interaction. |
void |
setFocus(boolean focus)
Assigns whether this Component has the input focus. |
void |
setFocusCapable(boolean focusCapable)
Assigns whether this Component supports gaining focus. |
void |
setHeight(int height)
Assigns the specified height to this Component .Default: 0 Events: |
Component |
setLimit(java.lang.Object limit)
Sets a layout limit that controls the bounds of this component within the context of the parent Container 's layout. |
Component |
setPosition(int x,
int y)
Assigns the specified X and Y coordinates to this Component atomically, in one operation. |
Component |
setSize(int width,
int height)
Assigns the specified width and height to this Component atomically, in one operation. |
void |
setUserObject(java.lang.Object userObject)
Assigns a user defined Object to this Component . |
void |
setVisible(boolean visible)
Assigns a boolean value indicating whether this Component may be displayed in a window. |
void |
setWidth(int width)
Assigns the specified width to this Component .Default: 0 Events: |
void |
setX(int x)
Assigns the specified X coordinate to this Component .Default: 0 Events: |
void |
setY(int y)
Assigns the specified Y coordinate to this Component .Default: 0 Events: |
Field Detail |
---|
static final java.lang.String PROPERTY_X
Component
.
setX(int)
,
getX()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_Y
Component
.
setY(int)
,
getY()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_WIDTH
Component
.
setWidth(int)
,
getWidth()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_HEIGHT
Component
.
setHeight(int)
,
getHeight()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_LIMIT
setLimit(Object)
,
getLimit()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_VISIBLE
Component
.
setVisible(boolean)
,
isVisible()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_ENABLED
Component
.
setEnabled(boolean)
,
isEnabled()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_FOCUS_CAPABLE
Component
.
setFocusCapable(boolean)
,
isFocusCapable()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_FOCUS
Component
.
setFocus(boolean)
,
isFocus()
,
Constant Field Valuesstatic final java.lang.String PROPERTY_USER_OBJECT
Component
.
setUserObject(Object)
,
getUserObject()
,
Constant Field Valuesstatic final java.lang.String ACTION_CLICK
Component
.
addActionListener(String, ActionListener)
,
addActionListener(String[], ActionListener)
,
removeActionListener(ActionListener)
,
fireAction(ActionEvent)
,
Constant Field Valuesstatic final java.lang.String ACTION_DOUBLE_CLICK
Component
.
addActionListener(String, ActionListener)
,
addActionListener(String[], ActionListener)
,
removeActionListener(ActionListener)
,
fireAction(ActionEvent)
,
Constant Field ValuesMethod Detail |
---|
void addPropertyChangeListener(java.lang.String propertyName, PropertyChangeListener listener)
PropertyChangeListener
to this componetn that will be notified when the specified property changes.
Adding a property listener to a component allows your code to react to a state change within the component. final TextField tf = new TextField(); tf.setEnabled(false); CheckBox cb = new CheckBox("Check me to enable the TextField."); cb.addPropertyChangeListener(CheckBox.PROPERTY_CHECKED, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent pce) { if (pce.getNewValue() == Boolean.TRUE) { tf.setEnabled(true); } else { tf.setEnabled(false); } } });
propertyName
- the name of the property that the listener will receive change events for.listener
- the listener that will receive PropertyChangeEvent
objects upon the property changing.
java.lang.IllegalArgumentException
- if listener
or propertyName
is null or if
propertyName
is an empty string.PropertyChangeListener
,
PropertyChangeEvent
void addPropertyChangeListener(java.lang.String[] propertyNames, PropertyChangeListener listener)
PropertyChangeListener
to this component that will be notified when any of the specified properties
change. This method is equivalent to calling addPropertyChangeListener(String, PropertyChangeListener)
once
for each property you want to listen to.
propertyNames
- a string array of property names that the listener will receive change events for.listener
- the listerner that will receive PropertyChangeEvent
objects anytime one of the specified
propertyNames of this component change.
java.lang.IllegalArgumentException
- if listener
, propertyNames
or any property name is the array
is null or if any property name is an empty string.addPropertyChangeListener(String, PropertyChangeListener)
,
PropertyChangeListener
,
PropertyChangeEvent
void removePropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener
from the component. If the listener was added for multiple
properties, it will be removed for all of them. NOTE: An exception is NOT thrown if you attempt to remove a listener that
does not exist on this component.
listener
- the listener to remove from the component.
java.lang.IllegalArgumentException
- if listener
is null.PropertyChangeListener
void addActionListener(java.lang.String action, ActionListener listener)
ActionListener
to this component that will be notified when the specified action occurs.
action
- the action to specficially be notified of.listener
- the event listener that will receive notification.void addActionListener(java.lang.String[] actions, ActionListener listener)
ActionListener
to this component that will be notified when any of the specified actions occur.
actions
- the actions to specficially be notified of.listener
- the event listener that will receive notification.void removeActionListener(ActionListener listener)
ActionListener
from all action event notifications from this component.
listener
- the listener that should no longer receive action event notifications.void fireAction(ActionEvent ev)
ev
- the event to signalvoid fireAction(java.lang.String action)
action
- the action to perform on the component.void fireAction(java.lang.String action, java.lang.Object source)
action
- the action to perform on the component.void addDropListener(Component dragSource, DropListener listener)
void addDropListener(Component[] dragSources, DropListener listener)
void removeDropListener(DropListener listener)
void fireDrop(DropEvent ev)
void fireDrop(Component dragComponent)
void fireDrop(Component dragComponent, java.lang.Object dragObject)
void addKeyPressListener(java.lang.String keyPressCombo, KeyPressListener listener)
KeyPressListener
that will be notified when the specified key press combination occurs.
For a description and list of valid keyPressCombo
strings, see the documentation for
KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
.
Establishing keyboard shortcuts for certain features can be a highly effective way to improve the efficiency of your
application. If your application has a Menu
, then typically the best way to establish such shortcuts is to
simply set the keyPressCombo
property for each Menu.Item
. Second to that, using this method to
establish shortcuts on the Frame
or a Dialog
will have a similar wide reaching effect.
Occasionally, based on the requirements of your application, you may also use this method to establish shortcuts that are
only valid when a given component has focus.
When a user presses a key and/or combination, the event bubbles up the component hierarchy from the component that currently
has focus and is absorbed by the first Component
that has a listener asking to be notified of that event.
Therefore, if both a Component
and a Container
up the hierarchy are listening for the same
event, only the Component
will receive notification. There is currently no way to cause the event to continue
bubbling.
Additionally, the keyboard navigation of each Component
cannot be overridden and you cannot receive
notification of such events. As an example, establishing a KeyPressListener
for "Space" key on the
CheckBox
, will have no effect because the "Space" key toggles the checked state of that component.
NOTE ON WEBBROWSERS: If no Component
is listening for a given key press, then the default behavior that the
browser has associated with that key press will occur. Additionally, certain key press events in certain browsers cannot be
entirely circumvented. In such a case, both the action defined by a listener and the browser's default behavior will occur.
An example of this is the F1 key in Internet Explorer. If you establish a listener for the F1 key, the IE help file will open
in addition to whatever action you may have defined.
Application.current().getFrame().addKeyPressListener("Ctrl-Alt-M", new KeyPressListener() { public void keyPress(KeyPressEvent kpe) { MessageBox.confirm("You pressed the following key combination: " + kpe.getKeyPressCombo()); } });
keyPressCombo
- a key press combo in any dash separated format supported by
KeyPressEvent.normalizeKeyPressCombo(String)
.listener
- the listener that will receive KeyPressEvent
objects upon the key press occurring.
java.lang.IllegalArgumentException
- if listener
or keyPressCombo
is null, or if
keyPressCombo
is an empty string, or if keyPressCombo
represents an invalid key combo.KeyPressListener
,
KeyPressEvent
,
KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
,
KeyPressEvent.normalizeKeyPressCombo(String)
void addKeyPressListener(java.lang.String[] keyPressCombos, KeyPressListener listener)
KeyPressListener
that will be notified when any of the specified key press combinations occur.
For a description and list of valid keyPressCombo
strings, see the documentation for
KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
.
See addKeyPressListener(String, KeyPressListener)
for a full semantic description.
keyPressCombos
- a string array of key press combos, each in any dash separated format supported by
KeyPressEvent.normalizeKeyPressCombo(String)
.listener
- the listener that will receive KeyPressEvent
objects when any of the key presses occur.
java.lang.IllegalArgumentException
- if listener
or any key press combo in keyPressCombos
is null,
or if any key press combo in keyPressCombos
is an empty string, or if any key press combo in
keyPressCombos
represents an invalid key combo.addKeyPressListener(String, KeyPressListener)
,
KeyPressListener
,
KeyPressEvent
,
KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
,
KeyPressEvent.normalizeKeyPressCombo(String)
void removeKeyPressListener(KeyPressListener listener)
KeyPressListener
from the component. If the listener was added for multiple
key press combinations, it will be removed for all of them. NOTE: An exception is NOT thrown if you attempt to remove a listener that
does not exist on this component.
listener
- the listener to remove from the component.
java.lang.IllegalArgumentException
- if listener
is null.KeyPressListener
void fireKeyPress(KeyPressEvent ev)
KeyPressEvent
being generated. As a result, all KeyPressListener
's that are registered on
the specified keyPressCombo
will be notified.
For a description and list of valid keyPressCombo
strings, see the documentation for
KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
.
A KeyPressEvent
that is generated programmatically via this mechansim may, under some circumstances, have a
slightly different behavior than one generated by user activity. The reason for this is that the event is only propagated
within the framework itself and does not actually occur in the client. In general, this should never be an issue because the
desired response to a keypress will be expressly defined by a given KeyPressListener
and therefore there would be
no dependence on any such side-effect. However, an example of one such
difference, is in terms of a browser's default behavior for a specific key press combination. If you use this mechanism
to trigger an F1 keypress, the browser's default behavior (typically bringing up a help window), will not occur.
ev
- a KeyPressEvent that represents the key press combo you want to signal has occured.
java.lang.IllegalArgumentException
- if keyPressCombo
is null, or if keyPressCombo
is an empty
string, or if keyPressCombo
represents an invalid key combo.void fireKeyPress(java.lang.String keyPressCombo)
keyPressCombo
- a key press combo in any dash separated format supported by
KeyPressEvent.normalizeKeyPressCombo(String)
.KeyPressEvent.encodeKeyPressCombo(boolean, boolean, boolean, String)
,
KeyPressEvent.normalizeKeyPressCombo(String)
java.lang.Object getParent()
Object
of this Component
. If you specifically need the parent
Container
of this Component
use getContainer()
instead.
Under the majority of situations, the returned value is either a Container
or null
since a
Component
will either be a child of a Container
or not attached to any object. However, in some
cases the parent of the Component
may be another Component
, or a completely different kind of
Object
. For example, in the case of the DropDownGridBox
, there is an actual
GridBox
that is a child of the drop down. Therefore, the parent of that GridBox
would be the
DropDownGridBox
. Another situation exists when you use a multi-tiered GridBox
, meaning a
GridBox
that has one or more "pop-up" child GridBox
's. Under that scenario, the parent of the
child's GridBox
is actually an instance of GridBox.Row
and the parent of the row is the
GridBox
.
Object
of this Component
, or null
if no parent exists.getContainer()
Container getContainer()
Container
of this Component
. Unlike getParent()
, this
method guarantees that if a non-null value is returned, it will be a Contaienr
.
Container
of this Component
, or null
if no parent exists.
java.lang.IllegalStateException
- if in the process of walking up the parent hierarchy, an unrecognized parent type is found.getParent()
Label getLabel()
Label
assigned to this Component
. This property is part of a two-way relationship
that is established by the Label.setLabelFor(Component)
property. There is no setLabel
method, instead use Label.setLabelFor(Component)
.
Label
assigned to this Component
.java.lang.Object getUserObject()
Object
for this Component
.
Object
for this Component
, or null if no value has been specified.setUserObject(Object)
void setUserObject(java.lang.Object userObject)
Object
to this Component
. This property has no direct effect
on the state of the Component
. Instead, it provides a general purpose storage
mechanism to the developer that allows any kind of data to be associated to this Component
.
For complex applications, alternate methods of associating state to a Component
will likely
serve your design more thoroughly. However, there are a number of cases where this flexibility could be useful
and therefore the framework supports the concept.
Refer to the documenation on Application.addGlobalPropertyChangeListener(String, PropertyChangeListener)
for an
example of a potential use of this property.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_USER_OBJECT ) to be generated.
userObject
- an Object
of any type that is to be associated with this Component
.getUserObject()
,
Application.addGlobalPropertyChangeListener(String, PropertyChangeListener)
,
PROPERTY_USER_OBJECT
,
PropertyChangeEvent
boolean isEnabled()
Component
is enabled and therefore supports user interaction.
Component
supports user interaction, false otherwise.setEnabled(boolean)
void setEnabled(boolean enabled)
Component
is enabled and therefore supports user interaction.
The form of user iteraction this property controls, depends on the specific kind of Component
itself. However, in general, all keyboard interaction and mouse interaction is disabled by
setting this property to false.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_ENABLED ) to be generated.
enabled
- true to allow user interaction, false to disallow it.isEnabled()
,
PROPERTY_ENABLED
,
PropertyChangeEvent
boolean isFocusCapable()
Component
supports gaining focus. Divider
, Image
and Label
.
Component
supports gaining focus, false otherwise.setFocusCapable(boolean)
,
setFocus(boolean)
void setFocusCapable(boolean focusCapable)
Component
supports gaining focus. Divider
, Image
and Label
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_FOCUS_CAPABLE ) to be generated.
focusCapable
- true to allow this component to receive focus, false to disallow it.isFocusCapable()
,
PROPERTY_FOCUS_CAPABLE
,
setFocus(boolean)
,
PropertyChangeEvent
boolean isFocus()
Component
has the input focus. If this is a Container
, then this method
will return true if a child Component
has the focus. In such a case, you can use the
Container.getChildWithFocus()
method to get a reference to that child. Similarly, if you want to find the
child Component
that has the focus anywhere in the current Frame
or Dialog
, you
can use the Container.getComponentWithFocus()
method.
Default: false. However, at rendering time, if no component in the window has focus, the first focus capable component is given focus.
See the setFocus(boolean)
method for a full description of focus details.
Component
has the input focus, false otherwise.setFocus(boolean)
,
Container.getComponentWithFocus()
,
Container.getChildWithFocus()
void setFocus(boolean focus)
Component
has the input focus. When this Component
has the input focus, it will receive all keyboard events generated by the user. Therefore,
if this Component
supports text editing and it has focus, the user can type a value
into it's field. Additionally, any keyboard navigation supported by this Component
or keyboard shortcuts added by a developer become available upon gaining focus. Conversely, when this Component
no longer has
focus, it will receive no keyboard events.
Default: false. However, at rendering time, if no component in the window has focus, the first focus capable component is given focus.
Details:
The simplest of all cases, is when this Component
has not yet been added to a Container
.
In that scenario, the focus property is simply set to true and no other effect occurs. Later, when this
Component
is added to a Container
it will be given the focus according to the guidelines
that follow.
As a general rule,
only a single Component
can have the focus per Frame
or Dialog
container hierarchy. In terms of the user interface, only a single Component
will actually
have the focus regardless of whether a Dialog
and the Frame
have components with focus.
In such a case, the actual focus is determined based on which window is currently active.
Since only one Component
per window can have focus, giving this Component
focus
will cause the prior Component
of the window to lose focus. In the most common case, both this
Component
and the Component
losing focus will be siblings in the same Container
.
In that case, the focus property of the Component
losing focus is simply set to false whereas the
focus property of this Component
is set to true.
More complex scenarios arise when the Component
losing focus and this Component
are
not siblings in the same Container
. In those cases, the order in which focus is lost and gained
occurs as follows:
Container
between both the Component
losing focus
and this Component
is found. This shared parent and any Container
above it in the hierarchy will be left alone.false
for each Container
in the hierarchy that contains the Component
losing focus, as well as the
component itself. This is done in top down order, so that the top most Container
loses focus first, followed
by every container between it and the Component
losing focus next, and with the component itself losing focus last. for each Container
in the hierarchy that contains this Component
, as well as the
component itself. This is done in top down order, so that the top most Container
gains focus first, followed
by every container between it and the Component
gaining focus next, and with this component gaining focus last.
The final case to be aware of is if you directly set this Component
's focus to false. In that case,
the same loss of focus rules outlined above apply. There is simply no gaining of focus that occurs by any component.
Therefore you cause the window to have no Component
with focus, with the except of the parent Container
of this Component
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_FOCUS ) to be generated. Additionally,
similar event generation may occur for other components according to the details outlined above.
focus
- true to give this Component
and it's parent containers focus, false otherwise.
java.lang.IllegalStateException
- if this Component
is not focus capable
java.lang.UnsupportedOperationException
- if the parent of this Component
is not null and is not a Container
isFocus()
,
Container.getComponentWithFocus()
,
Container.getChildWithFocus()
Style getStyle()
Style
object representing this Component
's current style settings. NOTE: This method
will never return null.
Style
object representing this Component
's current style settings.Style
int getX()
Component
.
Component
setX(int)
void setX(int x)
Component
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_X ) to be generated.
x
- the x coordinate (in pixels) to assign to this Component
java.lang.IllegalArgumentException
- if the x value is < -32768 or >= 32767getX()
,
setPosition(int, int)
,
setBounds(int, int, int, int)
,
PROPERTY_X
,
PropertyChangeEvent
int getY()
Component
.
Component
setY(int)
void setY(int y)
Component
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_Y ) to be generated.
y
- the y coordinate (in pixels) to assign to this Component
java.lang.IllegalArgumentException
- if the y value is < -32768 or >= 32767getY()
,
setPosition(int, int)
,
setBounds(int, int, int, int)
,
PROPERTY_Y
,
PropertyChangeEvent
Component setPosition(int x, int y)
Component
atomically, in one operation.
Aside from the convienence provided by this method, it also guarantees that both of the provided
X and Y coordinates are legal values before the values are committed. The primary benefit of this
is that no PropertyChangeEvent
's will be generated until both values have been set.
Events:
This method may generate PropertyChangeEvent
's. See the documenation of setX
and setY
for more details.
x
- the x coordinate (in pixels) to assign to this Component
y
- the y coordinate (in pixels) to assign to this Component
Component
so that you can perform operations like container.getChildren().add(new Button().setPosition(x, y))
java.lang.IllegalArgumentException
- if the x or y value is < -32768 or >= 32767setX(int)
,
setY(int)
,
setBounds(int, int, int, int)
,
PROPERTY_X
,
PROPERTY_Y
,
PropertyChangeEvent
int getWidth()
Component
.
Component
setWidth(int)
void setWidth(int width)
Component
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_WIDTH ) to be generated.
width
- the width (in pixels) to assign to this Component
java.lang.IllegalArgumentException
- if the width value is < 0 or >= 32767getWidth()
,
setSize(int, int)
,
setBounds(int, int, int, int)
,
PROPERTY_WIDTH
,
PropertyChangeEvent
int getHeight()
Component
.
Component
setHeight(int)
void setHeight(int height)
Component
.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_HEIGHT ) to be generated.
height
- the height (in pixels) to assign to this Component
java.lang.IllegalArgumentException
- if the height value is < 0 or >= 32767getHeight()
,
setSize(int, int)
,
setBounds(int, int, int, int)
,
PROPERTY_HEIGHT
,
PropertyChangeEvent
Component setSize(int width, int height)
Component
atomically, in one operation.
Aside from the convienence provided by this method, it also guarantees that both of the provided
width and height are legal values before the values are committed. The primary benefit of this
is that no PropertyChangeEvent
's will be generated until both values have been set.
Events:
This method may generate PropertyChangeEvent
's. See the documenation of setWidth
and setHeight
for more details.
width
- the width (in pixels) to assign to this Component
height
- the height (in pixels) to assign to this Component
Component
so that you can perform operations like container.getChildren().add(new Button().setSize(width, height))
java.lang.IllegalArgumentException
- if the width or height value is < 0 or >= 32767setWidth(int)
,
setHeight(int)
,
setBounds(int, int, int, int)
,
PROPERTY_WIDTH
,
PROPERTY_HEIGHT
,
PropertyChangeEvent
Component setBounds(int x, int y, int width, int height)
Component
atomically, in one operation.
Aside from the convienence provided by this method, it also guarantees that all of the provided
values are legal before they are committed. The primary benefit of this
is that no PropertyChangeEvent
's will be generated until all values have been set.
Events:
This method may generate PropertyChangeEvent
's. See the documenation of setX
, setY
, setWidth
and setHeight
for more details.
x
- the x coordinate (in pixels) to assign to this Component
y
- the y coordinate (in pixels) to assign to this Component
width
- the width (in pixels) to assign to this Component
height
- the height (in pixels) to assign to this Component
Component
so that you can perform operations like container.getChildren().add(new Button().setBounds(x, y, width, height))
java.lang.IllegalArgumentException
- if the width or height value is < 0 or >= 32767, or if the x or y value is < -32768 or >= 32767setX(int)
,
setY(int)
,
setWidth(int)
,
setHeight(int)
,
setBounds(int, int, int, int)
,
PROPERTY_X
,
PROPERTY_Y
,
PROPERTY_WIDTH
,
PROPERTY_HEIGHT
,
PropertyChangeEvent
java.lang.Object getLimit()
Container
's layout.
Container
's layout, or null if no limit is specified.setLimit(Object)
,
Container.getLayout()
,
Container.setLayout(thinwire.ui.layout.Layout)
,
Layout
Component setLimit(java.lang.Object limit)
Container
's layout.
The type of limit object that is acceptable depends on the Layout
that is specified for the parent Container
.
Default: null
limit
- a layout limit to use for the Container
's layout, or null to clear the limit.
Component
so that you can perform operations like container.getChildren().add(new Button().setLimit(...))PROPERTY_LIMIT
,
getLimit()
,
Container.getLayout()
,
Container.setLayout(thinwire.ui.layout.Layout)
,
Layout
,
PropertyChangeEvent
boolean isVisible()
Component
may be displayed in a window. See
the documentation of setVisible(boolean)
for further details about this property.Dialog
and Frame
containers.
Component
may be displayed, fasle otherwisesetVisible(boolean)
void setVisible(boolean visible)
Component
may be displayed in a window. Dialog
and Frame
containers.
This Component
will not actually be displayed unless it is visible and added to a Container
hierarchy in which all of the containers are also visible and the top-level Container
is a visible
Frame
or Dialog
. Once a Component
has been displayed, toggling this property
results in a light-weight operation that simply hides/shows this Component
. This may sound trivial, but the
difference is important when you need to maximize the performance of your application. For instance, it is a faster to toggle
the visibility of components then it is to add/remove the components from a displayed Container
. This is
because the first time a Component
is displayed, the entire state must be rendered. In contrast, when you
toggle visibility, the Component
remains in memory in a fully rendered form, it is just not visible to the
user.
If the prior value and new value differ, setting this property causes a PropertyChangeEvent
( propertyName = PROPERTY_VISIBLE ) to be generated.
visible
- true to indicate this Component
may be displayed, false otherwiseisVisible()
,
PROPERTY_VISIBLE
,
Container.getChildren()
,
PropertyChangeEvent
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |