Вы находитесь на странице: 1из 15

wxPython

Ral Peralta Lozada

Interfaces grficas disponibles en Python

PyGTK PyQt PySide TkInter Pygame wxPython PythonCard Pyglet Jython IronPython

Qu es wxPython?
wxPython

es un wrapper a la biblioteca de wxWidgets. Esta plataforma es utilizada para desarrollar aplicaciones que requieren interfaces grfica en C++.

Conceptos bsicos

Conceptos bsicos
El

objecto App inicializa la biblioteca y arranca las herramientas necesarias. Todas las aplicaciones de wxPython deben crear un objecto App. El objeto App tiene el mtodo MainLoop que se encargar de manejar todos los eventos en la interfaz.

Ejemplo:
import wx class MiApp(wx.App): def OnInit(self): wx.MessageBox("Hola Mundo", "wxApp") return True if __name__ == "__main__": app = MiApp() app.MainLoop()

Main Frame
El

objecto ms tpico en para mostrar una ventana al usuario es el Frame. El Frame es el contenedor de ms alto nivel. Parmetros para inicializacin del Frame:

Parent Id Tittle Pos Style name

Main Frame
Es

importante que el Frame tenga Panels como hijos principales. Lista de Estilos:

Jerarqua de Ventanas
La jerarqua es la siguiente: Top level windows(Frames y Dialogs) Contenedores Generales (Panels, Notebooks,etc) Controles (Buttons,CheckBoxes,TextControl)

Eventos
Los

eventos son usados para conectar acciones que suceden dentro del marco de trabajo con funciones. El mtodo Bind es usado para asociar una funcin que maneja el evento con un Control. Bind recibe dos parmetros, el primero es un objeto enlazador y el segundo es un objeto callable que reciba un evento como parmetro. Ejemplos de eventos son: KeyEvent, ButtonEvent, MouseEvent.

Eventos

ButtonEvents: wx.EVT_BUTTON KeyEvents:

MoueseEvents:

wx.EVT_ENTER_WINDOW wx.EVT_LEAVE_WINDOW wx.EVT_LEFT_UP wx.EVT_LEFT_DOWN

Eventos

Sizers
Sizers

son clases que se encargan del manejo y control en la colocacin (disposicin) de los componentes. BoxSizer es el Sizer ms bsico. Este especifica que los componentes se pueden disponer en posicin horizontal o vertical. Se crea de la siguiente manera: wx.BoxSizer(wx.VERTICAL o wx.HORIZONTAL) Con el mtodo Add(elemento,proporcin,bandera,borde) se agregan elemetos al sizer.

Banderas del mtodo Add

Referencia
http://www.wxpython.org/docs/api/

Вам также может понравиться