| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
AbstractButton b = …;
ButtonModel model = b.getModel();
Based on 45 examples
public interface ButtonModel extends ItemSelectable
State model for buttons.
This model is used for regular buttons, as well as check boxes and radio buttons, which are special kinds of buttons. In practice, a button's UI takes the responsibility of calling methods on its model to manage the state, as detailed below:
In simple terms, pressing and releasing the mouse over a regular
button triggers the button and causes and ActionEvent
to be fired. The same behavior can be produced via a keyboard key
defined by the look and feel of the button (typically the SPACE BAR).
Pressing and releasing this key while the button has
focus will give the same results. For check boxes and radio buttons, the
mouse or keyboard equivalent sequence just described causes the button
to become selected.
In details, the state model for buttons works as follows
when used with the mouse:
Pressing the mouse on top of a button makes the model both
armed and pressed. As long as the mouse remains down,
the model remains pressed, even if the mouse moves
outside the button. On the contrary, the model is only
armed while the mouse remains pressed within the bounds of
the button (it can move in or out of the button, but the model
is only armed during the portion of time spent within the button).
A button is triggered, and an ActionEvent
is fired,
when the mouse is released while the model is armed
- meaning when it is released over top of the button after the mouse
has previously been pressed on that button (and not already released).
Upon mouse release, the model becomes unarmed and unpressed.
In details, the state model for buttons works as follows
when used with the keyboard:
Pressing the look and feel defined keyboard key while the button
has focus makes the model both armed and pressed. As long as this key
remains down, the model remains in this state. Releasing the key sets
the model to unarmed and unpressed, triggers the button, and causes an
ActionEvent
to be fired.
Method Summary | |
---|---|
void |
Adds an ActionListener to the model.
|
void |
Adds a ChangeListener to the model.
|
void |
Adds an ItemListener to the model.
|
String |
Returns the action command string for the button. |
int |
Gets the keyboard mnemonic for the button. |
boolean |
isArmed() Indicates partial commitment towards triggering the button. |
boolean |
Indicates if the button can be selected or triggered by an input device, such as a mouse pointer. |
boolean |
Indicates if the button is pressed. |
boolean |
Indicates that the mouse is over the button. |
boolean |
Indicates if the button has been selected. |
void |
Removes an ActionListener from the model.
|
void |
Removes a ChangeListener from the model.
|
void |
Removes an ItemListener from the model.
|
void |
Sets the action command string that gets sent as part of the ActionEvent when the button is triggered.
|
void |
setArmed(boolean b) Marks the button as armed or unarmed. |
void |
setEnabled(boolean b) Enables or disables the button. |
void |
setGroup(ButtonGroup group) Identifies the group the button belongs to -- needed for radio buttons, which are mutually exclusive within their group. |
void |
setMnemonic(int key) Sets the keyboard mnemonic (shortcut key or accelerator key) for the button. |
void |
setPressed(boolean b) Sets the button to pressed or unpressed. |
void |
setRollover(boolean b) Sets or clears the button's rollover state |
void |
setSelected(boolean b) Selects or deselects the button. |
Methods inherited from class java.awt.ItemSelectable |
---|
addItemListener, getSelectedObjects, removeItemListener |
Method Detail |
---|
public void addActionListener(ActionListener l)
ActionListener
to the model.
l
- the listener to addpublic void addChangeListener(ChangeListener l)
ChangeListener
to the model.
l
- the listener to addpublic void addItemListener(ItemListener l)
ItemListener
to the model.
l
- the listener to addpublic String getActionCommand()
String
that identifies the generated eventpublic int getMnemonic()
public boolean isArmed()
true
if the button is armed,
and ready to be triggeredpublic boolean isEnabled()
true
if the button is enabledpublic boolean isPressed()
true
if the button is pressedpublic boolean isRollover()
true
if the mouse is over the buttonpublic boolean isSelected()
true
if the button is selectedpublic void removeActionListener(ActionListener l)
ActionListener
from the model.
l
- the listener to removepublic void removeChangeListener(ChangeListener l)
ChangeListener
from the model.
l
- the listener to removepublic void removeItemListener(ItemListener l)
ItemListener
from the model.
l
- the listener to removepublic void setActionCommand(String s)
ActionEvent
when the button is triggered.
s
- the String
that identifies the generated eventpublic void setArmed(boolean b)
b
- whether or not the button should be armedpublic void setEnabled(boolean b)
b
- whether or not the button should be enabledpublic void setGroup(ButtonGroup group)
group
- the ButtonGroup
the button belongs topublic void setMnemonic(int key)
key
- an int specifying the accelerator keypublic void setPressed(boolean b)
b
- whether or not the button should be pressedpublic void setRollover(boolean b)
b
- whether or not the button is in the rollover statepublic void setSelected(boolean b)
b
- true
selects the button,
false
deselects the button
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |