1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215
|
.. wxPython Phoenix documentation
This file was generated by Phoenix's sphinx generator and associated
tools, do not edit by hand.
Copyright: (c) 2011-2018 by Total Control Software
License: wxWindows License
.. include:: headings.inc
.. _wx.App:
==========================================================================================================================================
|phoenix_title| **wx.App**
==========================================================================================================================================
The ``wx.App`` class represents the application and is used to:
* bootstrap the wxPython system and initialize the underlying
gui toolkit
* set and get application-wide properties
* implement the native windowing system main message or event loop,
and to dispatch events to window instances
* etc.
Every wx application must have a single ``wx.App`` instance, and all
creation of UI objects should be delayed until after the ``wx.App`` object
has been created in order to ensure that the gui platform and wxWidgets
have been fully initialized.
Normally you would derive from this class and implement an ``OnInit``
method that creates a frame and then calls ``self.SetTopWindow(frame)``,
however ``wx.App`` is also usable on it's own without derivation.
|
|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>App</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.App_inheritance.png" alt="Inheritance diagram of App" usemap="#dummy" class="inheritance"/></center>
</div>
<script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
<map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.EventFilter.html" title="wx.EventFilter" alt="" coords="5,83,112,112"/> <area shape="rect" id="node3" href="wx.AppConsole.html" title="wx.AppConsole" alt="" coords="66,160,184,189"/> <area shape="rect" id="node2" href="wx.App.html" title="wx.App" alt="" coords="89,237,161,267"/> <area shape="rect" id="node4" href="wx.Object.html" title="wx.Object" alt="" coords="93,5,175,35"/> <area shape="rect" id="node5" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="137,83,248,112"/> <area shape="rect" id="node6" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="200,5,301,35"/> </map>
</p>
|
|method_summary| Methods Summary
================================
================================================================================ ================================================================================
:meth:`~wx.App.__init__` Construct a ``wx.App`` object.
:meth:`~wx.App.Get` A staticmethod returning the currently active application object.
:meth:`~wx.App.MainLoop` Execute the main GUI event loop
:meth:`~wx.App.OnPreInit` Things that must be done after _BootstrapApp has done its thing, but
:meth:`~wx.App.RedirectStdio` Redirect sys.stdout and sys.stderr to a file or a popup window.
:meth:`~wx.App.RestoreStdio`
:meth:`~wx.App.SetOutputWindowAttributes` Set the title, position and/or size of the output window if the stdio
:meth:`~wx.App.SetTopWindow` Set the "main" top level window, which will be used for the parent of
:meth:`~wx.App.__del__`
================================================================================ ================================================================================
|
|api| Class API
===============
.. class:: wx.App(PyApp)
The ``wx.App`` class represents the application and is used to:
* bootstrap the wxPython system and initialize the underlying
gui toolkit
* set and get application-wide properties
* implement the native windowing system main message or event loop,
and to dispatch events to window instances
* etc.
Every wx application must have a single ``wx.App`` instance, and all
creation of UI objects should be delayed until after the ``wx.App`` object
has been created in order to ensure that the gui platform and wxWidgets
have been fully initialized.
Normally you would derive from this class and implement an ``OnInit``
method that creates a frame and then calls ``self.SetTopWindow(frame)``,
however ``wx.App`` is also usable on it's own without derivation.
.. method:: __init__(self, redirect=False, filename=None, useBestVisual=False, clearSigInt=True)
Construct a ``wx.App`` object.
:param redirect: Should ``sys.stdout`` and ``sys.stderr`` be
redirected? Defaults to False. If ``filename`` is None
then output will be redirected to a window that pops up
as needed. (You can control what kind of window is created
for the output by resetting the class variable
``outputWindowClass`` to a class of your choosing.)
:param filename: The name of a file to redirect output to, if
redirect is True.
:param useBestVisual: Should the app try to use the best
available visual provided by the system (only relevant on
systems that have more than one visual.) This parameter
must be used instead of calling `SetUseBestVisual` later
on because it must be set before the underlying GUI
toolkit is initialized.
:param clearSigInt: Should SIGINT be cleared? This allows the
app to terminate upon a Ctrl-C in the console like other
GUI apps will.
:note: You should override OnInit to do application
initialization to ensure that the system, toolkit and
wxWidgets are fully initialized.
.. staticmethod:: Get()
A staticmethod returning the currently active application object.
Essentially just a more pythonic version of :meth:`GetApp`.
.. method:: MainLoop(self)
Execute the main GUI event loop
.. method:: OnPreInit(self)
Things that must be done after _BootstrapApp has done its thing, but
would be nice if they were already done by the time that OnInit is
called. This can be overridden in derived classes, but be sure to call
this method from there.
.. method:: RedirectStdio(self, filename=None)
Redirect sys.stdout and sys.stderr to a file or a popup window.
.. method:: RestoreStdio(self)
.. method:: SetOutputWindowAttributes(self, title=None, pos=None, size=None)
Set the title, position and/or size of the output window if the stdio
has been redirected. This should be called before any output would
cause the output window to be created.
.. method:: SetTopWindow(self, frame)
Set the "main" top level window, which will be used for the parent of
the on-demand output window as well as for dialogs that do not have
an explicit parent set.
.. method:: __del__(self)
|