<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:e="http://projectmallard.org/experimental/" type="guide" style="task" id="tutorial.py" xml:lang="es">

<info>
  <title type="text">Tutorial para principiantes (Python)</title>
  <link type="guide" xref="py#tutorial"/>
  <revision pkgversion="3.8" date="2013-02-25" status="draft"/>

  <desc>Un tutorial para principiantes que quieran aprender cómo programar IGU usando GTK+ en Python.</desc>
  <credit type="author copyright">
    <name>Tiffany Antopolski</name>
    <email its:translate="no">tiffany.antopolski@gmail.com</email>
    <years>2012</years>
  </credit>
  <credit type="author copyright">
    <name>Marta Maria Casetti</name>
    <email its:translate="no">mmcasetti@gmail.com</email>
    <years>2012 2013</years>
  </credit>
  <credit type="editor author">
    <name>Jim Campbell</name>
    <email its:translate="no">jwcampbell@gmail.com</email>
    <years>2013</years>
  </credit>

    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Daniel Mustieles</mal:name>
      <mal:email>daniel.mustieles@gmail.com</mal:email>
      <mal:years>2011 - 2016</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Nicolás Satragno</mal:name>
      <mal:email>nsatragno@gmail.com</mal:email>
      <mal:years>2012 - 2013</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Jorge González</mal:name>
      <mal:email>jorgegonz@svn.gnome.org</mal:email>
      <mal:years>2011</mal:years>
    </mal:credit>
  </info>

<title>Tutoriales para principiantes</title>

<synopsis>
 <p>Siguiendo estos tutoriales, aprenderá los conceptos básicos de la programación de interfaces de usuario usando GTK+ en Python.</p>

 <p>Si nunca antes ha programado, o no está familiarizado con los conceptos de la programación orientada a objetos, puede necesitar aprender primero unos conceptos básicos. El libro <link href="http://learnpythonthehardway.org/book/">Learn Python the Hard Way</link> o <link href="http://docs.python.org/tutorial/index.html">The Python Tutorial</link> pueden ser un buen comienzo. Tal vez también esté interesado en <link href="http://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html">The Python GTK+ 3 Tutorial</link>. Una vez que domine los conceptos básicos, vuelva y revise estos tutoriales.</p>
</synopsis>

<links type="section"/>

<section id="to-run">
<title>Para ejecutar los ejemplos de código</title>

  <p>Para ejecutar los ejemplos de código en el tutorial:</p>
  <steps>
    <item><p>Escriba o copie y pegue el código en un archivo, y guárdelo con un nombre como <var>nombre_archivo</var>.py</p></item>
    <item><p>Para ejecutar el código, escriba en la terminal:</p>
          <screen>python <var>nombre_archivo</var>.py</screen>
    </item>
  </steps>
  <p>Después de ejecutar el código, verá un widget en su pantalla, o (si ha escrito mal algo) un mensaje de error que le ayudará a identificar el problema.</p>
</section>

<section id="widgets">
<title>Un camino a través de los widgets (con algo de teoría)</title>
<p>El tutorial le llevará a través de ejemplos cada vez más complejos y teoría de programación, pero también puede ir directamente el tutorial que crea que le ayudará más.</p>
<steps>
  <title>Tutorial</title>
  <item><steps>
    <title>Ventanas básicas</title>
    <item><p><link xref="window.py"/></p></item>
    <item><p><link xref="GtkApplicationWindow.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Imágenes y etiquetas</title>
    <item><p><link xref="image.py"/></p></item>
    <item><p><link xref="strings.py"/></p></item>
    <item><p><link xref="label.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Introducción a las propiedades</title>
    <item><p><link xref="properties.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Rejilla, separador y deslizamiento</title>
    <item><p><link xref="grid.py"/></p></item>
    <item><p><link xref="separator.py"/></p></item>
    <item><p><link xref="scrolledwindow.py"/></p></item>
    <item><p><link xref="paned.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Señales, retornos de llamada y botones</title>   
    <item><p><link xref="signals-callbacks.py"/></p></item>
    <item><p><link xref="button.py"/></p></item>
    <item><p><link xref="linkbutton.py"/></p></item>
    <item><p><link xref="checkbutton.py"/></p></item>
    <item><p><link xref="togglebutton.py"/></p></item>
    <item><p><link xref="switch.py"/></p></item>
    <item><p><link xref="radiobutton.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Botonera</title>
    <item><p><link xref="buttonbox.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Otros widgets de visualización</title>
    <item><p><link xref="statusbar.py"/></p></item>
    <item><p><link xref="spinner.py"/></p></item>
    <item><p><link xref="progressbar.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Widgets de entrada</title>
    <item><p><link xref="spinbutton.py"/></p></item>
    <item><p><link xref="entry.py"/></p></item>
    <item><p><link xref="scale.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Un widget para escribir y mostrar texto</title>
    <item><p><link xref="textview.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Diálogos</title>
    <item><p><link xref="dialog.py"/></p></item>
    <item><p><link xref="aboutdialog.py"/></p></item>
    <item><p><link xref="messagedialog.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Menús, barras de herramientas y consejos (también: usar Glade y GtkBuilder)</title>
    <item><p><link xref="gmenu.py"/></p></item>
    <item><p><link xref="menubutton.py"/></p></item>
    <item><p><link xref="toolbar.py"/></p></item>
    <item><p><link xref="tooltip.py"/></p></item>
    <item><p><link xref="toolbar_builder.py"/></p></item>
    <item><p><link xref="menubar.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Selectores</title>
    <item><p><link xref="colorbutton.py"/></p></item>
    <item><p><link xref="fontchooserwidget.py"/></p></item>
    <item><p><link xref="filechooserdialog.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>TreeViews y ComboBoxes (usando el diseño M/V/C)</title>
    <item><p><link xref="combobox.py"/></p></item>
    <item><p><link xref="treeview_simple_liststore.py"/></p></item>
    <item><p><link xref="treeview_treestore.py"/></p></item>
    <item><p><link xref="model-view-controller.py"/></p></item>
    <item><p><link xref="combobox_multicolumn.py"/></p></item>
    <item><p><link xref="treeview_advanced_liststore.py"/></p></item>
    <item><p><link xref="treeview_cellrenderertoggle.py"/></p></item>
  </steps></item>
  <item><steps>
    <title>Widget personalizado</title>
    <item><p><link xref="widget_drawing.py"/></p></item>
  </steps></item>
</steps>
</section>

</page>
