.. 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.StaticBoxSizer:

==========================================================================================================================================
|phoenix_title|  **wx.StaticBoxSizer**
==========================================================================================================================================

:ref:`wx.StaticBoxSizer`  is a sizer derived from :ref:`wx.BoxSizer`  but adds a static box around the sizer. 
         

The static box may be either created independently or the sizer may create it itself as a convenience. In any case, the sizer owns the :ref:`wx.StaticBox`  control and will delete it in the :ref:`wx.StaticBoxSizer`  destructor. 

Note that since wxWidgets 2.9.1 you are strongly encouraged to create the windows which are added to :ref:`wx.StaticBoxSizer`  as children of :ref:`wx.StaticBox`  itself and failure to do so will result in warning messages in debug builds, even if creating them using the static box parent as parent still works too (but note that items using different parents can't be used inside the same sizer, i.e. all of them should be children either of the box itself or of its parent and an assert will be triggered if this is not the case). Please see :ref:`wx.StaticBox`  documentation for more details. 

Example of use of this class: ::

            def CreateControls(self):

                panel = wx.Panel(self)
                # Other controls here...

                sz = wx.StaticBoxSizer(wx.VERTICAL, panel, "Box")
                sz.Add(wx.StaticText(sz.GetStaticBox(), wx.ID_ANY,
                                     "This window is a child of the staticbox"))

                # Other code...










         



.. seealso:: :ref:`wx.Sizer`, :ref:`wx.StaticBox`, :ref:`wx.BoxSizer`, :ref:`Sizers Overview <sizers overview>`    







|

|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>StaticBoxSizer</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.StaticBoxSizer_inheritance.svg" alt="Inheritance diagram of StaticBoxSizer" 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.StaticBoxSizer.html" title="wx.StaticBoxSizer  is a sizer derived from wx.BoxSizer  but adds a static box around the sizer." alt="" coords="5,236,163,265"/> <area shape="rect" id="node2" href="wx.BoxSizer.html" title="The basic idea behind a box sizer is that windows will most often be laid out in rather simple basic geometry, typically in a row or a column or several hierarchies of either." alt="" coords="25,159,143,188"/> <area shape="rect" id="node3" href="wx.Sizer.html" title="wx.Sizer  is the abstract base class used for laying out subwindows in a window." alt="" coords="39,82,129,111"/> <area shape="rect" id="node4" href="wx.Object.html" title="This is the root class of many of the wxWidgets classes." alt="" coords="35,5,134,34"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.StaticBoxSizer.__init__`                                              This constructor uses an already existing static box.
:meth:`~wx.StaticBoxSizer.CalcMin`                                               Implements the calculation of a box sizer's minimal.
:meth:`~wx.StaticBoxSizer.GetStaticBox`                                          Returns the static box associated with the sizer.
:meth:`~wx.StaticBoxSizer.RepositionChildren`                                    Method which must be overridden in the derived sizer classes.
================================================================================ ================================================================================


|


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

================================================================================ ================================================================================
:attr:`~wx.StaticBoxSizer.StaticBox`                                             See :meth:`~wx.StaticBoxSizer.GetStaticBox`
================================================================================ ================================================================================


|


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


.. class:: wx.StaticBoxSizer(BoxSizer)

   **Possible constructors**::

       StaticBoxSizer(box, orient=HORIZONTAL) -> None
       
       StaticBoxSizer(orient, parent, label='') -> None
       
   
   StaticBoxSizer is a sizer derived from BoxSizer but adds a static
   box around the sizer.



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



      |overload| **Overloaded Implementations:**

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

      
      **__init__** `(self, box, orient=HORIZONTAL)`
      
      This constructor uses an already existing static box. 
                       
      
      
      
      
      :param `box`: The static box to associate with the sizer (which will take its ownership).   
      :type `box`: wx.StaticBox
      :param `orient`: Can be either  ``VERTICAL``   or   ``HORIZONTAL`` .    
      :type `orient`: int
      
      
      
      
      
      
      
      
      :rtype: `None`     
      
      
      
      
                        
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, orient, parent, label='')`
      
      This constructor creates a new static box with the given label and parent window. 
                       
      
      
      :param `orient`: 
      :type `orient`: int
      :param `parent`: 
      :type `parent`: wx.Window
      :param `label`: 
      :type `label`: string
      
      
      
      
      :rtype: `None`     
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: CalcMin(self)

      Implements the calculation of a box sizer's minimal. 
                 

      It is used internally only and must not be called by the user. Documented for information. 
                 

      :rtype: :ref:`wx.Size`








   .. method:: GetStaticBox(self)

      Returns the static box associated with the sizer. 
                 

      :rtype: :ref:`wx.StaticBox`








   .. method:: RepositionChildren(self, minSize)

      Method which must be overridden in the derived sizer classes. 
                 

      The implementation should reposition the children using the current total size available to the sizer ( ``m_size`` ) and the size computed by the last call to  :meth:`CalcMin` . 


                


      :param `minSize`: 
      :type `minSize`: wx.Size




      :rtype: `None`     







      .. versionadded:: 4.1/wxWidgets-3.1.3 ,
          before this version RecalcSizes() method not taking any arguments had to be overridden in the derived classes instead.   








   .. attribute:: StaticBox

      See :meth:`~wx.StaticBoxSizer.GetStaticBox`

