.. 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.html.HtmlListBox:

==========================================================================================================================================
|phoenix_title|  **wx.html.HtmlListBox**
==========================================================================================================================================

:ref:`wx.html.HtmlListBox`  is an implementation of :ref:`wx.VListBox`  which shows HTML content in the listbox rows.          

This is still an abstract base class and you will need to derive your own class from it (see htlbox sample for the example), but you will only need to override a single :meth:`wx.html.HtmlListBox.OnGetItem`   function. 







.. _HtmlListBox-events:

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

Handlers bound for the following event types will receive one of the :ref:`wx.html.HtmlCellEvent`:ref:`wx.html.HtmlLinkEvent` parameters.


- EVT_HTML_CELL_CLICKED: A :ref:`wx.html.HtmlCell`  was clicked.  
- EVT_HTML_CELL_HOVER: The mouse passed over a :ref:`wx.html.HtmlCell`.  
- EVT_HTML_LINK_CLICKED: A :ref:`wx.html.HtmlCell`  which contains a hyperlink was clicked.  








         



.. seealso:: :ref:`wx.html.SimpleHtmlListBox`    







|

|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>HtmlListBox</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.html.HtmlListBox_inheritance.png" alt="Inheritance diagram of HtmlListBox" 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.html.HtmlListBox.html" title="wx.html.HtmlListBox" alt="" coords="109,469,268,499"/> <area shape="rect" id="node2" href="wx.VListBox.html" title="wx.VListBox" alt="" coords="137,392,240,421"/> <area shape="rect" id="node3" href="wx.VScrolledWindow.html" title="wx.VScrolledWindow" alt="" coords="109,315,268,344"/> <area shape="rect" id="node4" href="wx.Panel.html" title="wx.Panel" alt="" coords="78,237,158,267"/> <area shape="rect" id="node5" href="wx.VarVScrollHelper.html" title="wx.VarVScrollHelper" alt="" coords="187,237,342,267"/> <area shape="rect" id="node6" href="wx.Window.html" title="wx.Window" alt="" coords="60,160,157,189"/> <area shape="rect" id="node7" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="50,83,167,112"/> <area shape="rect" id="node8" href="wx.Object.html" title="wx.Object" alt="" coords="5,5,92,35"/> <area shape="rect" id="node9" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="117,5,223,35"/> <area shape="rect" id="node10" href="wx.VarScrollHelperBase.html" title="wx.VarScrollHelperBase" alt="" coords="181,160,359,189"/> </map> 
   </p>
   </div>

|


|sub_classes| Known Subclasses
==============================

:ref:`wx.richtext.RichTextStyleListBox`, :ref:`wx.html.SimpleHtmlListBox`

|


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

================================================================================ ================================================================================
:meth:`~wx.html.HtmlListBox.__init__`                                            Normal constructor which calls :meth:`~HtmlListBox.Create`   internally.
:meth:`~wx.html.HtmlListBox.Create`                                              Creates the control and optionally sets the initial number of items in it (it may also be set or changed later with :meth:`wx.VListBox.SetItemCount` ).
:meth:`~wx.html.HtmlListBox.GetClassDefaultAttributes`                           
:meth:`~wx.html.HtmlListBox.GetFileSystem`                                       Returns the :ref:`wx.FileSystem`  used by the HTML parser of this object.
:meth:`~wx.html.HtmlListBox.GetSelectedTextBgColour`                             This virtual function may be overridden to change the appearance of the background of the selected cells in the same way as :meth:`~HtmlListBox.GetSelectedTextColour` .
:meth:`~wx.html.HtmlListBox.GetSelectedTextColour`                               This virtual function may be overridden to customize the appearance of the selected cells.
:meth:`~wx.html.HtmlListBox.OnGetItem`                                           This method must be implemented in the derived class and should return the body (i.e. without  ``html``   nor   ``body``   tags) of the HTML fragment for the given item.
:meth:`~wx.html.HtmlListBox.OnGetItemMarkup`                                     This function may be overridden to decorate HTML returned by :meth:`~HtmlListBox.OnGetItem` .
:meth:`~wx.html.HtmlListBox.OnLinkClicked`                                       Called when the user clicks on hypertext link.
================================================================================ ================================================================================


|


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

================================================================================ ================================================================================
:attr:`~wx.html.HtmlListBox.FileSystem`                                          See :meth:`~wx.html.HtmlListBox.GetFileSystem`
================================================================================ ================================================================================


|


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


.. class:: wx.html.HtmlListBox(VListBox)

   **Possible constructors**::

       HtmlListBox(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize,
                   style=0, name=HtmlListBoxNameStr)
       
       HtmlListBox()
       
   
   HtmlListBox is an implementation of VListBox which shows HTML
   content in the listbox rows.



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



      |overload| Overloaded Implementations:

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

      
      **__init__** `(self, parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=0, name=HtmlListBoxNameStr)`
      
      Normal constructor which calls :meth:`Create`   internally.                  
      
      
      :param `parent`: 
      :type `parent`: wx.Window
      :param `id`: 
      :type `id`: wx.WindowID
      :param `pos`: 
      :type `pos`: wx.Point
      :param `size`: 
      :type `size`: wx.Size
      :param `style`: 
      :type `style`: long
      :param `name`: 
      :type `name`: string
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self)`
      
      Default constructor, you must call :meth:`Create`   later.                   
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: Create(self, parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=0, name=HtmlListBoxNameStr)

      Creates the control and optionally sets the initial number of items in it (it may also be set or changed later with :meth:`wx.VListBox.SetItemCount` ).                  

      There are no special styles defined for :ref:`wx.html.HtmlListBox`, in particular the :ref:`wx.ListBox`  styles (with the exception of  ``LB_MULTIPLE`` ) cannot be used here. 

      Returns ``True`` on success or ``False`` if the control couldn't be created                  


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




      :rtype: `bool`








   .. staticmethod:: GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL)




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




      :rtype: :ref:`VisualAttributes`








   .. method:: GetFileSystem(self)

      Returns the :ref:`wx.FileSystem`  used by the HTML parser of this object.                  

      The file system object is used to resolve the paths in HTML fragments displayed in the control and you should use :meth:`wx.FileSystem.ChangePathTo`   if you use relative paths for the images or other resources embedded in your HTML.                  

      :rtype: :ref:`FileSystem`








   .. method:: GetSelectedTextBgColour(self, colBg)

      This virtual function may be overridden to change the appearance of the background of the selected cells in the same way as :meth:`GetSelectedTextColour` .                  

      It should be rarely, if ever, used because :meth:`wx.VListBox.SetSelectionBackground`   allows changing the selection background for all cells at once and doing anything more fancy is probably going to look strangely. 

                


      :param `colBg`: 
      :type `colBg`: wx.Colour




      :rtype: :ref:`Colour`







      .. seealso:: :meth:`GetSelectedTextColour`     








   .. method:: GetSelectedTextColour(self, colFg)

      This virtual function may be overridden to customize the appearance of the selected cells.                  

      It is used to determine how the colour `colFg`  is going to look inside selection. By default all original colours are completely ignored and the standard, system-dependent, selection colour is used but the program may wish to override this to achieve some custom appearance. 

                


      :param `colFg`: 
      :type `colFg`: wx.Colour




      :rtype: :ref:`Colour`







      .. seealso:: :meth:`GetSelectedTextBgColour` , :meth:`wx.VListBox.SetSelectionBackground` , :meth:`wx.SystemSettings.GetColour`     








   .. method:: OnGetItem(self, n)

      This method must be implemented in the derived class and should return the body (i.e. without  ``html``   nor   ``body``   tags) of the HTML fragment for the given item.                   

      Note that this function should always return a text fragment for the `n`  item which renders with the same height both when it is selected and when it's not: i.e. if you call, inside your :meth:`OnGetItem`   implementation,  ``IsSelected(n)``   to make the items appear differently when they are selected, then you should make sure that the returned HTML fragment will render with the same height or else you'll see some artifacts when the user selects an item.                   


      :param `n`: 
      :type `n`: int




      :rtype: `string`








   .. method:: OnGetItemMarkup(self, n)

      This function may be overridden to decorate HTML returned by :meth:`OnGetItem` .                  


      :param `n`: 
      :type `n`: int




      :rtype: `string`








   .. method:: OnLinkClicked(self, n, link)

      Called when the user clicks on hypertext link.                  

      Does nothing by default. Overloading this method is deprecated; intercept the event instead. 




      :param `n`: Index of the item containing the link.   
      :type `n`: int
      :param `link`: Description of the link.  
      :type `link`: wx.html.HtmlLinkInfo






                  



      .. seealso:: :ref:`wx.html.HtmlLinkInfo`.   








   .. attribute:: FileSystem

      See :meth:`~wx.html.HtmlListBox.GetFileSystem`

