<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog de Alex Vera &#187; python</title>
	<atom:link href="http://alexvera.net/category/programacion/python-programacion/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexvera.net</link>
	<description>Cajón perosonal de recuerdos varios</description>
	<lastBuildDate>Mon, 07 Jun 2010 19:09:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>empezando con wxPython II</title>
		<link>http://alexvera.net/2010/06/empezando-con-wxpython-ii/</link>
		<comments>http://alexvera.net/2010/06/empezando-con-wxpython-ii/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 21:41:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[python]]></category>
		<category><![CDATA[empezando con wzxpython]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[wxPython]]></category>

		<guid isPermaLink="false">http://alexvera.net/?p=219</guid>
		<description><![CDATA[Continuendo con la traducción del tutorial introductorio de wxPython. No olvides visitar desde  la primera parte de esta traduccion Construyendo un editor de textos simple En este tutorial vamos a construir un editor de textos simple.  En el proceso, exploraremos varios widgets, y aprenderemos sobre caracteristicas como eventos y callbacks. Primeos pasos El primer paso [...]]]></description>
			<content:encoded><![CDATA[<p>Continuendo con la traducción del tutorial introductorio de wxPython. No olvides visitar desde  la <a href="http://alexvera.net/2010/06/wxpython-gui-con-python-y-como-empezar-con-el/">primera parte</a> de esta traduccion</p>
<h2>Construyendo un editor de textos simple</h2>
<p>En este tutorial vamos a construir un editor de textos simple.  En el proceso, exploraremos varios widgets, y aprenderemos sobre caracteristicas como eventos y callbacks.</p>
<h3>Primeos pasos</h3>
<p>El primer paso es hacer un marco simple con un text box editable dentro de el. Un text box se lo hace con el widget wx.TextCtrl . Por defecto, el text box es uncampo de línea simple, pero el parametro wx.TE_MULTILINE permite entrar miltiples líneas en el texto.</p>
<pre>#!/usr/bin/env python

import wx
class MyFrame(wx.Frame):
     """ Simplemente derivamos una nueva clase de Frame [Marco]. """
     def __init__(self, parent, title):
         wx.Frame.__init__(self, parent, title=title, size=(200,100))
         self.control = wx.TextCtrl(self, style=wx.TE_MULTILINE)
         self.Show(True)

app = wx.App(False)
frame = MyFrame(None, 'Editor simple')
app.MainLoop()</pre>
<p>En este ejemplo, derivamos desde wx.Frame y sobreescribimos su metodo __init__ . Aquí declaramos un nuevo wx.TextCtrl que será un simple control de edicion de texto. Notece que desde que MyFrame ejecuta el self.Show() dentro de su método __init__ , no necesitamos seguir llamando el frame.Show() de manera explícita.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexvera.net/2010/06/empezando-con-wxpython-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>empezando con wxPython: GUI con python</title>
		<link>http://alexvera.net/2010/06/wxpython-gui-con-python-y-como-empezar-con-el/</link>
		<comments>http://alexvera.net/2010/06/wxpython-gui-con-python-y-como-empezar-con-el/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 21:30:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[programación]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[traduccion]]></category>
		<category><![CDATA[wxPython]]></category>

		<guid isPermaLink="false">http://alexvera.net/?p=215</guid>
		<description><![CDATA[Continuando con la información, ya a estas alturas lejanas en el tiempo sobre python, voy a tratar de hacer la traducción del Getting Started with wxPython, del que no se si exista alguna traducción actualmente, pero igual pondré mi granito de arena al hacer mi versión traducida. Más información y el original pueden encontrarlo en [...]]]></description>
			<content:encoded><![CDATA[<p>Continuando con la información, ya a estas alturas lejanas en el tiempo sobre python, voy a tratar de hacer la traducción del Getting Started with wxPython, del que no se si exista alguna traducción actualmente, pero igual pondré mi granito de arena al hacer mi versión traducida.</p>
<p>Más información y el original pueden encontrarlo en <a href="wxpython.org" class="broken_link">wxpython.org</a></p>
<h2>Empezando  con wxPython</h2>
<h3>Primer aplicacion: Hola Mundo</h3>
<p>Como tradición, vamos a empezar escribiendo una pequeña aplicación &#8220;Hola Mundo&#8221;. Este es el código:</p>
<pre id="CA-f8a1ce0f4f3413e2076ce8252d2494abddd9863c" dir="ltr" lang="en">#!/usr/bin/env python
import wx

app = wx.App(False)  # Creamos una nueva aplicacion, no redireccionamos stdout/stderr a una ventana.
frame = wx.Frame(None, wx.ID_ANY, "Hola Mundo") # Un Marco(Frame)es una ventana de alto nivel(top-level window).
frame.Show(True)     # Mostramos el marco.
app.MainLoop()</pre>
<p>Explicación del código</p>
<table>
<tbody>
<tr>
<td><tt>app = wx.App(False)</tt></td>
<td>Cada aplicación wxPython es una instancia de <tt>wx.App</tt>. Para las aplicaciones más sencillas puedes usar <tt>wx.App</tt> como tal. Cuando tienes aplicaciones más complejas necesitarás extender la clase <tt>wx.App</tt> class. El parametro &#8220;False&#8221; significa &#8220;no redireccionar stdout y stderr a una ventana&#8221;.</td>
</tr>
<tr>
<td><tt>wx.Frame(None,wx.ID_ANY,"Hello")</tt></td>
<td>Un <tt>wx.Frame</tt> es una ventana en top-level. La sintaxus es  <strong>x.Frame(Padre, Id, Titulo)</strong>. La mayoría de contructores tienen esta forma (un objeto padre, seguido por un id). En este ejemplo, nosotros usamos  <tt>None</tt> para  &#8220;sin padre&#8221; y <tt>wx.ID_ANY</tt> para que wxWidgets escoja un id por nosotros.</td>
</tr>
<tr>
<td><tt>frame.Show(True)</tt></td>
<td>Hacemos el marco visible &#8220;mostrandolo&#8221;.</td>
</tr>
<tr>
<td><tt>app.MainLoop()</tt></td>
<td>Finalmente, empezamos el <tt>MainLoop</tt> de la aplicacion cuyo role es de manipular los eventos.</td>
</tr>
</tbody>
</table>
<p>Nota: Casi siempre querras usar wx.ID_ANY u tro proveedor estandard de ID de wxWidgets. Puedes hacer tus proios IDs pero no hay razón para hacerlo.</p>
<p>Ejecuta el programa y verás una ventana como esta:</p>
<p style="text-align: center;"><a href="http://alexvera.net/wp-content/uploads/2010/06/holamundo-wxpython.png"><img class="alignnone size-full wp-image-216" title="holamundo-wxpython" src="http://alexvera.net/wp-content/uploads/2010/06/holamundo-wxpython.png" alt="" width="404" height="285" /></a></p>
<h3>Windows or Marcos[Frames]?</h3>
<p>Cuando las personas hablan de GUIs, comunmente hablan de Windows [ventanas], menús e íconos. Naturalmente, encontes, pidrías esperar que wx.Window represanta una ventana en la pantalla.  Desafortunadamente, este no es el caso.  Una wx.Window es la clase base de la que todos los elementos visuales deriban (botons, menus, etc) y lo que nosotros normalmente pensamos que es una ventana de un programa es un wx.Frame [un marco].  Esta es una inconsistencia desafortunada que deja mucha confusión a los nuevosusuarios</p>
<p>fin de la primera parte.  Esto continuará</p>
]]></content:encoded>
			<wfw:commentRss>http://alexvera.net/2010/06/wxpython-gui-con-python-y-como-empezar-con-el/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Introduccion a la programación orientada a objetos con python</title>
		<link>http://alexvera.net/2009/10/introduccion-a-la-programacion-orientada-a-objetos-con-python/</link>
		<comments>http://alexvera.net/2009/10/introduccion-a-la-programacion-orientada-a-objetos-con-python/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 06:10:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[python]]></category>
		<category><![CDATA[introducción]]></category>
		<category><![CDATA[poo]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://alexvera.net/?p=104</guid>
		<description><![CDATA[Buscando info introductoria sobre python me encontré con un interesante artículo de Rafael Villar Burke donde nos brinda en forma detallada una muy buena introducción sobre la programación orientada a objetos [poo] enfocada a python, Perfecta aclaración de lo que __init__ , __del__, __class__ y compañía hacen [cosa que no lo tenía claro antes del [...]]]></description>
			<content:encoded><![CDATA[<p>Buscando info introductoria sobre <a href="http://www.python.org/">python </a>me encontré con un interesante artículo de <a href="http://www.rvburke.com/">Rafael Villar Burke</a> donde nos brinda en forma detallada una muy buena introducción sobre la programación orientada a objetos [poo] enfocada a <a href="http://python.org">python</a>,</p>
<p>Perfecta aclaración de lo que __init__ , <code>__del__, </code><code>__class__ y compañía hacen [cosa que no lo tenía claro antes del artículo].</code></p>
<p>Así que si estás interesad@ en este tema, <a href="http://www.rvburke.com/">este es un muy buen lugar donde comenzar</a></p>
<p>visitar: <a href="http://blog.rvburke.com/2006/11/22/programacion-orientada-a-objetos-en-python/">Programación orientada a objetos en Python</a></p>
]]></content:encoded>
			<wfw:commentRss>http://alexvera.net/2009/10/introduccion-a-la-programacion-orientada-a-objetos-con-python/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.484 seconds -->
