Class ButtonGroup

java.lang.Object
javax.swing.ButtonGroup
All Implemented Interfaces:
Serializable

public class ButtonGroup extends Object implements Serializable
This class is used to create a multiple-exclusion scope for a set of buttons. Creating a set of buttons with the same ButtonGroup object means that turning "on" one of those buttons turns off all other buttons in the group.

A ButtonGroup can be used with any set of objects that inherit from AbstractButton. Typically a button group contains instances of JRadioButton, JRadioButtonMenuItem, or JToggleButton. It wouldn't make sense to put an instance of JButton or JMenuItem in a button group because JButton and JMenuItem don't implement the selected state.

Initially, all buttons in the group are unselected.

For examples and further information on using button groups see How to Use 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 JavaBeans has been added to the java.beans package. Please see XMLEncoder.

Since:
1.2
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    The list of buttons participating in this group.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new ButtonGroup.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Adds the button to the group.
    void
    Clears the selection such that none of the buttons in the ButtonGroup are selected.
    int
    Returns the number of buttons in the group.
    Returns all the buttons that are participating in this group.
    Returns the model of the selected button.
    boolean
    Returns whether a ButtonModel is selected.
    void
    Removes the button from the group.
    void
    setSelected(ButtonModel m, boolean b)
    Sets the selected value for the ButtonModel.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Field Details

    • buttons

      protected Vector<AbstractButton> buttons
      The list of buttons participating in this group.
  • Constructor Details

    • ButtonGroup

      public ButtonGroup()
      Creates a new ButtonGroup.
  • Method Details

    • add

      public void add(AbstractButton b)
      Adds the button to the group.
      Parameters:
      b - the button to be added
    • remove

      public void remove(AbstractButton b)
      Removes the button from the group.
      Parameters:
      b - the button to be removed
    • clearSelection

      public void clearSelection()
      Clears the selection such that none of the buttons in the ButtonGroup are selected.
      Since:
      1.6
    • getElements

      public Enumeration<AbstractButton> getElements()
      Returns all the buttons that are participating in this group.
      Returns:
      an Enumeration of the buttons in this group
    • getSelection

      public ButtonModel getSelection()
      Returns the model of the selected button.
      Returns:
      the selected button model
    • setSelected

      public void setSelected(ButtonModel m, boolean b)
      Sets the selected value for the ButtonModel. Only one button in the group may be selected at a time.
      Parameters:
      m - the ButtonModel
      b - true if this button is to be selected, otherwise false
    • isSelected

      public boolean isSelected(ButtonModel m)
      Returns whether a ButtonModel is selected.
      Parameters:
      m - an instance of ButtonModel
      Returns:
      true if the button is selected, otherwise returns false
    • getButtonCount

      public int getButtonCount()
      Returns the number of buttons in the group.
      Returns:
      the button count
      Since:
      1.3