.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc



.. _wx.CheckBox:

==========================================================================================================================================
|phoenix_title|  **wx.CheckBox**
==========================================================================================================================================

A checkbox is a labelled box which by default is either on (checkmark is visible) or off (no checkmark).          

Optionally (when the ``wx.CHK_3STATE`` style flag is set) it can have a third state, called the mixed or undetermined state. Often this is used as a "Does Not Apply" state. 





.. _CheckBox-styles:

|styles| Window Styles
================================

This class supports the following styles: 

  

- ``wx.CHK_2STATE``: Create a 2-state checkbox. This is the default.  
- ``wx.CHK_3STATE``: Create a 3-state checkbox. Not implemented in ``GTK1``.  
- ``wx.CHK_ALLOW_3RD_STATE_FOR_USER``: By default a user can't set a 3-state checkbox to the third state. It can only be done from code. Using this flags allows the user to set the checkbox to the third state by clicking.  
- ``wx.ALIGN_RIGHT``: Makes the text appear on the left of the checkbox.  








.. _CheckBox-events:

|events| Events Emitted by this Class
=====================================

Handlers bound for the following event types will receive a :ref:`wx.CommandEvent` parameter.


- EVT_CHECKBOX: Process a  ``wxEVT_CHECKBOX``   event, when the checkbox is clicked.   








         



.. seealso:: :ref:`wx.RadioButton`, :ref:`wx.CommandEvent`    







|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>CheckBox</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.CheckBox_inheritance.png" alt="Inheritance diagram of CheckBox" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.CheckBox.html" title="wx.CheckBox" alt="" coords="53,315,164,344"/> <area shape="rect" id="node2" href="wx.Control.html" title="wx.Control" alt="" coords="63,237,155,267"/> <area shape="rect" id="node3" href="wx.Window.html" title="wx.Window" alt="" coords="60,160,157,189"/> <area shape="rect" id="node4" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="50,83,167,112"/> <area shape="rect" id="node5" href="wx.Object.html" title="wx.Object" alt="" coords="5,5,92,35"/> <area shape="rect" id="node6" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="117,5,223,35"/> </map> 
   </p>
   </div>

|


|appearance| Control Appearance
===============================

|

.. figure:: _static/images/widgets/fullsize/wxmsw/wx.checkbox.png
   :alt: wxMSW
   :figclass: floatleft

   **wxMSW**


.. figure:: _static/images/widgets/fullsize/wxmac/wx.checkbox.png
   :alt: wxMAC
   :figclass: floatright

   **wxMAC**


.. figure:: _static/images/widgets/fullsize/wxgtk/wx.checkbox.png
   :alt: wxGTK
   :figclass: floatcenter

   **wxGTK**


|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.CheckBox.__init__`                                                    Default constructor.
:meth:`~wx.CheckBox.Create`                                                      Creates the checkbox for two-step construction.
:meth:`~wx.CheckBox.Get3StateValue`                                              Gets the state of a 3-state checkbox.
:meth:`~wx.CheckBox.GetClassDefaultAttributes`                                   
:meth:`~wx.CheckBox.GetValue`                                                    Gets the state of a 2-state checkbox.
:meth:`~wx.CheckBox.Is3State`                                                    Returns whether or not the checkbox is a 3-state checkbox.
:meth:`~wx.CheckBox.Is3rdStateAllowedForUser`                                    Returns whether or not the user can set the checkbox to the third state.
:meth:`~wx.CheckBox.IsChecked`                                                   This is just a maybe more readable synonym for :meth:`~CheckBox.GetValue` : just as the latter, it returns ``True`` if the checkbox is checked and ``False`` otherwise.
:meth:`~wx.CheckBox.Set3StateValue`                                              Sets the checkbox to the given state.
:meth:`~wx.CheckBox.SetValue`                                                    Sets the checkbox to the given state.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.CheckBox.ThreeStateValue`                                             See :meth:`~wx.CheckBox.Get3StateValue` and :meth:`~wx.CheckBox.Set3StateValue`
:attr:`~wx.CheckBox.Value`                                                       See :meth:`~wx.CheckBox.GetValue` and :meth:`~wx.CheckBox.SetValue`
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.CheckBox(Control)

   **Possible constructors**::

       CheckBox()
       
       CheckBox(parent, id=ID_ANY, label=EmptyString, pos=DefaultPosition,
                size=DefaultSize, style=0, validator=DefaultValidator,
                name=CheckBoxNameStr)
       
   
   A checkbox is a labelled box which by default is either on (checkmark
   is visible) or off (no checkmark).



   .. method:: __init__(self, *args, **kw)



      |overload| Overloaded Implementations:

      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self)`
      
      Default constructor.                  
      
                       
      
      
      
      .. seealso:: :meth:`Create` , :ref:`wx.Validator`    
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, parent, id=ID_ANY, label=EmptyString, pos=DefaultPosition, size=DefaultSize, style=0, validator=DefaultValidator, name=CheckBoxNameStr)`
      
      Constructor, creating and showing a checkbox.                  
      
      
      
      
      :param `parent`: Parent window. Must not be ``None``.   
      :type `parent`: wx.Window
      :param `id`: Checkbox identifier. The value ``wx.ID_ANY`` indicates a default value.   
      :type `id`: wx.WindowID
      :param `label`: Text to be displayed next to the checkbox.   
      :type `label`: string
      :param `pos`: Checkbox position. If :ref:`wx.DefaultPosition`  is specified then a default position is chosen.   
      :type `pos`: wx.Point
      :param `size`: Checkbox size. If :ref:`wx.DefaultSize`  is specified then a default size is chosen.   
      :type `size`: wx.Size
      :param `style`: Window style. See :ref:`wx.CheckBox`.   
      :type `style`: long
      :param `validator`: Window validator.   
      :type `validator`: wx.Validator
      :param `name`: Window name.  
      :type `name`: string
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
                        
      
      
      
      .. seealso:: :meth:`Create` , :ref:`wx.Validator`    
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: Create(self, parent, id=ID_ANY, label=EmptyString, pos=DefaultPosition, size=DefaultSize, style=0, validator=DefaultValidator, name=CheckBoxNameStr)

      Creates the checkbox for two-step construction.                  

      See :ref:`wx.CheckBox`  for details.                  


      :param `parent`: 
      :type `parent`: wx.Window
      :param `id`: 
      :type `id`: wx.WindowID
      :param `label`: 
      :type `label`: string
      :param `pos`: 
      :type `pos`: wx.Point
      :param `size`: 
      :type `size`: wx.Size
      :param `style`: 
      :type `style`: long
      :param `validator`: 
      :type `validator`: wx.Validator
      :param `name`: 
      :type `name`: string




      :rtype: `bool`








   .. method:: Get3StateValue(self)

      Gets the state of a 3-state checkbox.                  

      Asserts when the function is used with a 2-state checkbox.                  

      :rtype: :ref:`wx.CheckBoxState`








   .. staticmethod:: GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL)




      :param `variant`: 
      :type `variant`: wx.WindowVariant




      :rtype: :ref:`wx.VisualAttributes`








   .. method:: GetValue(self)

      Gets the state of a 2-state checkbox.                  

                

      :rtype: `bool`







      :returns: 

         Returns ``True`` if it is checked, ``False`` otherwise.   








   .. method:: Is3State(self)

      Returns whether or not the checkbox is a 3-state checkbox.                  

                

      :rtype: `bool`







      :returns: 

         ``True`` if this checkbox is a 3-state checkbox, ``False`` if it's a 2-state checkbox.   








   .. method:: Is3rdStateAllowedForUser(self)

      Returns whether or not the user can set the checkbox to the third state.                  

                

      :rtype: `bool`







      :returns: 

         ``True`` if the user can set the third state of this checkbox, ``False`` if it can only be set programmatically or if it's a 2-state checkbox.   








   .. method:: IsChecked(self)

      This is just a maybe more readable synonym for :meth:`GetValue` : just as the latter, it returns ``True`` if the checkbox is checked and ``False`` otherwise.                  

      :rtype: `bool`








   .. method:: Set3StateValue(self, state)

      Sets the checkbox to the given state.                  

      This does not cause a  ``wxEVT_CHECKBOX``   event to get emitted. 

      Asserts when the checkbox is a 2-state checkbox and setting the state to ``wx.CHK_UNDETERMINED``.                  


      :param `state`: 
      :type `state`: wx.CheckBoxState







   .. method:: SetValue(self, state)

      Sets the checkbox to the given state.                  

      This does not cause a  ``wxEVT_CHECKBOX``   event to get emitted. 




      :param `state`: If ``True``, the check is on, otherwise it is off.   
      :type `state`: bool




                  





   .. attribute:: ThreeStateValue

      See :meth:`~wx.CheckBox.Get3StateValue` and :meth:`~wx.CheckBox.Set3StateValue`


   .. attribute:: Value

      See :meth:`~wx.CheckBox.GetValue` and :meth:`~wx.CheckBox.SetValue`

