| public abstract class javax.swing AbstractButton
|
Java SE 6 |
Buttons can be configured, and to some degree controlled, by
Actions. Using an
Action with a button has many benefits beyond directly
configuring a button. Refer to
Swing Components Supporting Action for more
details, and you can find more information in How
to Use Actions, a section in The Java Tutorial.
For further information see How to Use Buttons, Check Boxes, and Radio Buttons, a section in The Java Tutorial.
Warning:
Serialized objects of this class will not be compatible with
future Swing releases. The current serialization support is
appropriate for short term storage or RMI between applications running
the same version of Swing. As of 1.4, support for long term storage
of all JavaBeansTM
has been added to the java.beans package.
Please see java.beans.XMLEncoder.
| version | 1.190 05/09/06 |
| Fields | |
|---|---|
| final public static String | MODEL_CHANGED_PROPERTY Identifies a change in the button model. |
| final public static String | TEXT_CHANGED_PROPERTY Identifies a change in the button's text. |
| final public static String | MNEMONIC_CHANGED_PROPERTY Identifies a change to the button's mnemonic. |
| final public static String | MARGIN_CHANGED_PROPERTY Identifies a change in the button's margins. |
| final public static String | VERTICAL_ALIGNMENT_CHANGED_PROPERTY Identifies a change in the button's vertical alignment. |
| final public static String | HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY Identifies a change in the button's horizontal alignment. |
| final public static String | VERTICAL_TEXT_POSITION_CHANGED_PROPERTY Identifies a change in the button's vertical text position. |
| final public static String | HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY Identifies a change in the button's horizontal text position. |
| final public static String | BORDER_PAINTED_CHANGED_PROPERTY Identifies a change to having the border drawn, or having it not drawn. |
| final public static String | FOCUS_PAINTED_CHANGED_PROPERTY Identifies a change to having the border highlighted when focused, or not. |
| final public static String | ROLLOVER_ENABLED_CHANGED_PROPERTY Identifies a change from rollover enabled to disabled or back to enabled. |
| final public static String | CONTENT_AREA_FILLED_CHANGED_PROPERTY Identifies a change to having the button paint the content area. |
| final public static String | ICON_CHANGED_PROPERTY Identifies a change to the icon that represents the button. |
| final public static String | PRESSED_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the button has been pressed. |
| final public static String | SELECTED_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the button has been selected. |
| final public static String | ROLLOVER_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the cursor is over the button. |
| final public static String | ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the cursor is over the button and it has been selected. |
| final public static String | DISABLED_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the button has been disabled. |
| final public static String | DISABLED_SELECTED_ICON_CHANGED_PROPERTY Identifies a change to the icon used when the button has been disabled and selected. |
| protected ButtonModel | model The data model that determines the button's state. |
| protected ChangeListener | changeListener The button model's changeListener.
|
| protected ActionListener | actionListener The button model's ActionListener.
|
| protected ItemListener | itemListener The button model's ItemListener.
|
| protected ChangeEvent | changeEvent Only one ChangeEvent is needed per button
instance since the
event's only state is the source property. The source of events
generated is always "this".
|
| Constructors | |
|---|---|
| public | AbstractButton() |
| Methods | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| protected void | actionPropertyChanged(Action action, String propertyName) Updates the button's state in response to property changes in the associated action. This method is invoked from the PropertyChangeListener returned from
createActionPropertyChangeListener. Subclasses do not normally
need to invoke this. Subclasses that support additional Action
properties should override this and
configurePropertiesFromAction.
Refer to the table at
Swing Components Supporting
| ||||||||||||||
| public void | addActionListener(ActionListener l) Adds an ActionListener to the button.
| ||||||||||||||
| public void | addChangeListener(ChangeListener l) Adds a ChangeListener to the button.
| ||||||||||||||
| protected void | addImpl(Component comp, Object constraints, int index) Adds the specified component to this container at the specified index, refer to Object, int)
for a complete description of this method.
| ||||||||||||||
| public void | addItemListener(ItemListener l) Adds an ItemListener to the checkbox.
| ||||||||||||||
| protected int | checkHorizontalKey(int key, String exception) Verify that the key argument is a legal value for the
horizontalAlignment and horizontalTextPosition
properties. Valid values are:
| ||||||||||||||
| protected int | checkVerticalKey(int key, String exception) Verify that the key argument is a legal value for the
vertical properties. Valid values are:
| ||||||||||||||
| protected void | configurePropertiesFromAction(Action a) Sets the properties on this button to match those in the specified Action. Refer to
Swing Components Supporting Action for more
details as to which properties this sets.
| ||||||||||||||
| protected ActionListener | createActionListener() | ||||||||||||||
| protected PropertyChangeListener | createActionPropertyChangeListener(Action a) Creates and returns a PropertyChangeListener that is
responsible for listening for changes from the specified
Action and updating the appropriate properties.
Warning: If you subclass this do not create an anonymous
inner class. If you do the lifetime of the button will be tied to
that of the
| ||||||||||||||
| protected ChangeListener | createChangeListener() Subclasses that want to handle ChangeEvents differently
can override this to return another ChangeListener
implementation.
| ||||||||||||||
| protected ItemListener | createItemListener() | ||||||||||||||
| public void | doClick() Programmatically perform a "click". This does the same thing as if the user had pressed and released the button. | ||||||||||||||
| public void | doClick(int pressTime) Programmatically perform a "click". This does the same thing as if the user had pressed and released the button. The button stays visually "pressed" for pressTime
milliseconds.
| ||||||||||||||
| protected void | fireActionPerformed(ActionEvent event) Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the event
parameter.
| ||||||||||||||
| protected void | fireItemStateChanged(ItemEvent event) Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the event parameter.
| ||||||||||||||
| protected void | fireStateChanged() Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created.
| ||||||||||||||
| public boolean | imageUpdate(Image img, int infoflags, int x, int y, int w, int h) This is overridden to return false if the current Icon's
Image is not equal to the
passed in Image img.
| ||||||||||||||
| protected void | init(String text, Icon icon) | ||||||||||||||
| protected void | paintBorder(Graphics g) Paint the button's border if BorderPainted
property is true and the button has a border.
| ||||||||||||||
| protected String | paramString() Returns a string representation of this AbstractButton.
This method
is intended to be used only for debugging purposes, and the
content and format of the returned string may vary between
implementations. The returned string may be empty but may not
be null.
Overriding
| ||||||||||||||
| public void | removeActionListener(ActionListener l) Removes an ActionListener from the button.
If the listener is the currently set Action
for the button, then the Action
is set to null.
| ||||||||||||||
| public void | removeChangeListener(ChangeListener l) Removes a ChangeListener from the button.
| ||||||||||||||
| public void | removeItemListener(ItemListener l) Removes an ItemListener from the button.
| ||||||||||||||
| public void | removeNotify() Notifies this component that it no longer has a parent component. When this method is invoked, any KeyboardActions
set up in the the chain of parent components are removed.
| ||||||||||||||
| public void | updateUI() Resets the UI property to a value from the current look and feel. Subtypes of AbstractButton
should override this to update the UI. For
example, JButton might do the following:
setUI((ButtonUI)UIManager.getUI(
"ButtonUI", "javax.swing.plaf.basic.BasicButtonUI", this));
| ||||||||||||||
| Properties | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| public void | setAction(Action a) Sets the Action.
The new Action replaces any previously set
Action but does not affect ActionListeners
independently added with addActionListener.
If the Action is already a registered
ActionListener for the button, it is not re-registered.
Setting the
This method uses three other methods to set
and help track the
| ||||||||||
| public Action | getAction() Returns the currently set Action for this
ActionEvent source, or null
if no Action is set.
| ||||||||||
| public void | setActionCommand(String actionCommand) Sets the action command for this button.
| ||||||||||
| public String | getActionCommand() Returns the action command for this button.
| ||||||||||
| public ActionListener[] | getActionListeners() Returns an array of all the ActionListeners added
to this AbstractButton with addActionListener().
| ||||||||||
| public void | setBorderPainted(boolean b) Sets the borderPainted property.
If true and the button has a border,
the border is painted. The default value for the
borderPainted property is true.
| ||||||||||
| public boolean | isBorderPainted() Gets the borderPainted property.
| ||||||||||
| public ChangeListener[] | getChangeListeners() Returns an array of all the ChangeListeners added
to this AbstractButton with addChangeListener().
| ||||||||||
| public void | setContentAreaFilled(boolean b) Sets the contentAreaFilled property.
If true the button will paint the content
area. If you wish to have a transparent button, such as
an icon only button, for example, then you should set
this to false. Do not call setOpaque(false).
The default value for the the contentAreaFilled
property is true.
This function may cause the component's opaque property to change. The exact behavior of calling this function varies on a component-by-component and L&F-by-L&F basis.
| ||||||||||
| public boolean | isContentAreaFilled() Gets the contentAreaFilled property.
| ||||||||||
| public void | setDisabledIcon(Icon disabledIcon) Sets the disabled icon for the button.
| ||||||||||
| public Icon | getDisabledIcon() Returns the icon used by the button when it's disabled. If no disabled icon has been set this will forward the call to the look and feel to construct an appropriate disabled Icon. Some look and feels might not render the disabled Icon, in which case they will ignore this.
| ||||||||||
| public void | setDisabledSelectedIcon(Icon disabledSelectedIcon) Sets the disabled selection icon for the button.
| ||||||||||
| public Icon | getDisabledSelectedIcon() Returns the icon used by the button when it's disabled and selected. If no disabled selection icon has been set, this will forward the call to the LookAndFeel to construct an appropriate disabled Icon from the selection icon if it has been set and to getDisabledIcon() otherwise.
Some look and feels might not render the disabled selected Icon, in which case they will ignore this.
| ||||||||||
| public void | setDisplayedMnemonicIndex(int index) throws IllegalArgumentException Provides a hint to the look and feel as to which character in the text should be decorated to represent the mnemonic. Not all look and feels may support this. A value of -1 indicates either there is no mnemonic, the mnemonic character is not contained in the string, or the developer does not wish the mnemonic to be displayed.
The value of this is updated as the properties relating to the
mnemonic change (such as the mnemonic itself, the text...).
You should only ever have to call this if
you do not wish the default character to be underlined. For example, if
the text was 'Save As', with a mnemonic of 'a', and you wanted the 'A'
to be decorated, as 'Save As', you would have to invoke
| ||||||||||
| public int | getDisplayedMnemonicIndex() Returns the character, as an index, that the look and feel should provide decoration for as representing the mnemonic character.
| ||||||||||
| public void | setEnabled(boolean b) Enables (or disables) the button.
| ||||||||||
| public void | setFocusPainted(boolean b) Sets the paintFocus property, which must
be true for the focus state to be painted.
The default value for the paintFocus property
is true.
Some look and feels might not paint focus state;
they will ignore this property.
| ||||||||||
| public boolean | isFocusPainted() Gets the paintFocus property.
| ||||||||||
| public void | setHideActionText(boolean hideActionText) Sets the hideActionText property, which determines
whether the button displays text from the Action.
This is useful only if an Action has been
installed on the button.
| ||||||||||
| public boolean | getHideActionText() Returns the value of the hideActionText property, which
determines whether the button displays text from the
Action. This is useful only if an Action
has been installed on the button.
| ||||||||||
| public void | setHorizontalAlignment(int alignment) Sets the horizontal alignment of the icon and text. AbstractButton's default is SwingConstants.CENTER,
but subclasses such as JCheckBox may use a different default.
| ||||||||||
| public int | getHorizontalAlignment() Returns the horizontal alignment of the icon and text. AbstractButton's default is SwingConstants.CENTER,
but subclasses such as JCheckBox may use a different default.
| ||||||||||
| public void | setHorizontalTextPosition(int textPosition) Sets the horizontal position of the text relative to the icon.
| ||||||||||
| public int | getHorizontalTextPosition() Returns the horizontal position of the text relative to the icon.
| ||||||||||
| public void | setIcon(Icon defaultIcon) Sets the button's default icon. This icon is also used as the "pressed" and "disabled" icon if there is no explicitly set pressed icon.
| ||||||||||
| public Icon | getIcon() Returns the default icon.
| ||||||||||
| public void | setIconTextGap(int iconTextGap) If both the icon and text properties are set, this property defines the space between them. The default value of this property is 4 pixels. This is a JavaBeans bound property.
| ||||||||||
| public int | getIconTextGap() Returns the amount of space between the text and the icon displayed in this button.
| ||||||||||
| public ItemListener[] | getItemListeners() Returns an array of all the ItemListeners added
to this AbstractButton with addItemListener().
| ||||||||||
| public void | setLabel(String label) Sets the label text.
| ||||||||||
| public String | getLabel() Returns the label text.
| ||||||||||
| public void | setLayout(LayoutManager mgr) Sets the layout manager for this container, refer to java.awt.Container#setLayout(LayoutManager)
for a complete description of this method.
| ||||||||||
| public void | setMargin(Insets m) Sets space for margin between the button's border and the label. Setting to null will cause the button to
use the default margin. The button's default Border
object will use this value to create the proper margin.
However, if a non-default border is set on the button,
it is that Border object's responsibility to create the
appropriate margin space (else this property will
effectively be ignored).
| ||||||||||
| public Insets | getMargin() Returns the margin between the button's border and the label.
| ||||||||||
| public void | setMnemonic(int mnemonic) Sets the keyboard mnemonic on the current model. The mnemonic is the key which when combined with the look and feel's mouseless modifier (usually Alt) will activate this button if focus is contained somewhere within this button's ancestor window.
A mnemonic must correspond to a single key on the keyboard
and should be specified using one of the If the character defined by the mnemonic is found within the button's label string, the first occurrence of it will be underlined to indicate the mnemonic to the user.
| ||||||||||
| public void | setMnemonic(char mnemonic) This method is now obsolete, please use setMnemonic(int)
to set the mnemonic for a button. This method is only designed
to handle character values which fall between 'a' and 'z' or
'A' and 'Z'.
| ||||||||||
| public int | getMnemonic() Returns the keyboard mnemonic from the the current model.
| ||||||||||
| public void | setModel(ButtonModel newModel) Sets the model that this button represents.
| ||||||||||
| public ButtonModel | getModel() Returns the model that this button represents.
| ||||||||||
| public void | setMultiClickThreshhold(long threshhold) Sets the amount of time (in milliseconds) required between mouse press events for the button to generate the corresponding action events. After the initial mouse press occurs (and action event generated) any subsequent mouse press events which occur on intervals less than the threshhold will be ignored and no corresponding action event generated. By default the threshhold is 0, which means that for each mouse press, an action event will be fired, no matter how quickly the mouse clicks occur. In buttons where this behavior is not desirable (for example, the "OK" button in a dialog), this threshhold should be set to an appropriate positive value.
| ||||||||||
| public long | getMultiClickThreshhold() Gets the amount of time (in milliseconds) required between mouse press events for the button to generate the corresponding action events.
| ||||||||||
| public void | setPressedIcon(Icon pressedIcon) Sets the pressed icon for the button.
| ||||||||||
| public Icon | getPressedIcon() Returns the pressed icon for the button.
| ||||||||||
| public void | setRolloverEnabled(boolean b) Sets the rolloverEnabled property, which
must be true for rollover effects to occur.
The default value for the rolloverEnabled
property is false.
Some look and feels might not implement rollover effects;
they will ignore this property.
| ||||||||||
| public boolean | isRolloverEnabled() Gets the rolloverEnabled property.
| ||||||||||
| public void | setRolloverIcon(Icon rolloverIcon) Sets the rollover icon for the button.
| ||||||||||
| public Icon | getRolloverIcon() Returns the rollover icon for the button.
| ||||||||||
| public void | setRolloverSelectedIcon(Icon rolloverSelectedIcon) Sets the rollover selected icon for the button.
| ||||||||||
| public Icon | getRolloverSelectedIcon() Returns the rollover selection icon for the button.
| ||||||||||
| public void | setSelected(boolean b) Sets the state of the button. Note that this method does not trigger an actionEvent.
Call doClick to perform a programatic action change.
| ||||||||||
| public boolean | isSelected() Returns the state of the button. True if the toggle button is selected, false if it's not.
| ||||||||||
| public void | setSelectedIcon(Icon selectedIcon) Sets the selected icon for the button.
| ||||||||||
| public Icon | getSelectedIcon() Returns the selected icon for the button.
| ||||||||||
| public Object[] | getSelectedObjects() Returns an array (length 1) containing the label or null if the button is not selected.
| ||||||||||
| public void | setText(String text) Sets the button's text.
| ||||||||||
| public String | getText() Returns the button's text.
| ||||||||||
| public void | setUI(ButtonUI ui) Sets the L&F object that renders this component.
| ||||||||||
| public ButtonUI | getUI() Returns the L&F object that renders this component.
| ||||||||||
| public void | setVerticalAlignment(int alignment) Sets the vertical alignment of the icon and text.
| ||||||||||
| public int | getVerticalAlignment() Returns the vertical alignment of the text and icon.
| ||||||||||
| public void | setVerticalTextPosition(int textPosition) Sets the vertical position of the text relative to the icon.
| ||||||||||
| public int | getVerticalTextPosition() Returns the vertical position of the text relative to the icon.
| ||||||||||
| About DocWeb · Bundles · Export · Export All | Top 10 · Statistics · Login |
| About Sun · Contact · Privacy · Terms of Use · Trademarks | Java SE 6 · Copyright © 1994-2009 Sun Microsystems, Inc.All rights reserved. Use is subject to license terms |
![]() |
![]() |
|