FileDocCategorySizeDatePackage
JCheckBox.javaAPI DocJava SE 6 API10606Tue Jun 10 00:26:36 BST 2008javax.swing

JCheckBox

public class JCheckBox extends JToggleButton implements Accessible
An implementation of a check box -- an item that can be selected or deselected, and which displays its state to the user. By convention, any number of check boxes in a group can be selected. See How to Use Buttons, Check Boxes, and Radio Buttons in The Java Tutorial for examples and information on using check boxes.

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.

Warning: Swing is not thread safe. For more information see Swing's Threading Policy.

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 {@link java.beans.XMLEncoder}.

see
JRadioButton
beaninfo
attribute: isContainer false description: A component which can be selected or deselected.
version
1.78 08/08/06
author
Jeff Dinkins

Fields Summary
public static final String
BORDER_PAINTED_FLAT_CHANGED_PROPERTY
Identifies a change to the flat property.
private boolean
flat
private static final String
uiClassID
Constructors Summary
public JCheckBox()
Creates an initially unselected check box button with no text, no icon.



                     
       
        this(null, null, false);
    
public JCheckBox(Icon icon)
Creates an initially unselected check box with an icon.

param
icon the Icon image to display

        this(null, icon, false);
    
public JCheckBox(Icon icon, boolean selected)
Creates a check box with an icon and specifies whether or not it is initially selected.

param
icon the Icon image to display
param
selected a boolean value indicating the initial selection state. If true the check box is selected

        this(null, icon, selected);
    
public JCheckBox(String text)
Creates an initially unselected check box with text.

param
text the text of the check box.

        this(text, null, false);
    
public JCheckBox(Action a)
Creates a check box where properties are taken from the Action supplied.

since
1.3

        this();
	setAction(a);
    
public JCheckBox(String text, boolean selected)
Creates a check box with text and specifies whether or not it is initially selected.

param
text the text of the check box.
param
selected a boolean value indicating the initial selection state. If true the check box is selected

        this(text, null, selected);
    
public JCheckBox(String text, Icon icon)
Creates an initially unselected check box with the specified text and icon.

param
text the text of the check box.
param
icon the Icon image to display

        this(text, icon, false);
    
public JCheckBox(String text, Icon icon, boolean selected)
Creates a check box with text and icon, and specifies whether or not it is initially selected.

param
text the text of the check box.
param
icon the Icon image to display
param
selected a boolean value indicating the initial selection state. If true the check box is selected

        super(text, icon, selected);
        setUIProperty("borderPainted", Boolean.FALSE);
        setHorizontalAlignment(LEADING);
    
Methods Summary
public javax.accessibility.AccessibleContextgetAccessibleContext()
Gets the AccessibleContext associated with this JCheckBox. For JCheckBoxes, the AccessibleContext takes the form of an AccessibleJCheckBox. A new AccessibleJCheckBox instance is created if necessary.

return
an AccessibleJCheckBox that serves as the AccessibleContext of this JCheckBox
beaninfo
expert: true description: The AccessibleContext associated with this CheckBox.

        if (accessibleContext == null) {
            accessibleContext = new AccessibleJCheckBox();
        }
        return accessibleContext;
    
public java.lang.StringgetUIClassID()
Returns a string that specifies the name of the L&F class that renders this component.

return
the string "CheckBoxUI"
see
JComponent#getUIClassID
see
UIDefaults#getUI
beaninfo
expert: true description: A string that specifies the name of the L&F class

        return uiClassID;
    
public booleanisBorderPaintedFlat()
Gets the value of the borderPaintedFlat property.

return
the value of the borderPaintedFlat property
see
#setBorderPaintedFlat
since
1.3

	return flat;
    
protected java.lang.StringparamString()
Returns a string representation of this JCheckBox. 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. specific new aspects of the JFC components.

return
a string representation of this JCheckBox.

	return super.paramString();
    
private voidreadObject(java.io.ObjectInputStream s)
See JComponent.readObject() for information about serialization in Swing.

        s.defaultReadObject();
	if (getUIClassID().equals(uiClassID)) {
	    updateUI();
	}
    
public voidsetBorderPaintedFlat(boolean b)
Sets the borderPaintedFlat property, which gives a hint to the look and feel as to the appearance of the check box border. This is usually set to true when a JCheckBox instance is used as a renderer in a component such as a JTable or JTree. The default value for the borderPaintedFlat property is false. This method fires a property changed event. Some look and feels might not implement flat borders; they will ignore this property.

param
b true requests that the border be painted flat; false requests normal borders
see
#isBorderPaintedFlat
beaninfo
bound: true attribute: visualUpdate true description: Whether the border is painted flat.
since
1.3

        boolean oldValue = flat;
        flat = b;
        firePropertyChange(BORDER_PAINTED_FLAT_CHANGED_PROPERTY, oldValue, flat);
        if (b != oldValue) {
            revalidate();
            repaint();
	}
    
voidsetIconFromAction(javax.swing.Action a)
The icon for checkboxs comes from the look and feel, not the Action; this is overriden to do nothing.

    
public voidupdateUI()
Resets the UI property to a value from the current look and feel.

see
JComponent#updateUI

        setUI((ButtonUI)UIManager.getUI(this));
    
private voidwriteObject(java.io.ObjectOutputStream s)

        s.defaultWriteObject();
        if (getUIClassID().equals(uiClassID)) {
            byte count = JComponent.getWriteObjCounter(this);
            JComponent.setWriteObjCounter(this, --count);
            if (count == 0 && ui != null) {
                ui.installUI(this);
            }
        }