Botón (Python) Marta Maria Casetti mmcasetti@gmail.com 2012 Un widget de botón que emite una señal cuando se pulsa sobre él Daniel Mustieles daniel.mustieles@gmail.com 2011 - 2017 Nicolás Satragno nsatragno@gmail.com 2012 - 2013 Jorge González jorgegonz@svn.gnome.org 2011 Button

Un widget de botón conectado a una función de retorno de llamada.

Código usado para generar este ejemplo from gi.repository import Gtk import sys class MyWindow(Gtk.ApplicationWindow): # a window def __init__(self, app): Gtk.Window.__init__(self, title="GNOME Button", application=app) self.set_default_size(250, 50) # a button button = Gtk.Button() # with a label button.set_label("Click me") # connect the signal "clicked" emitted by the button # to the callback function do_clicked button.connect("clicked", self.do_clicked) # add the button to the window self.add(button) # callback function connected to the signal "clicked" of the button def do_clicked(self, button): print("You clicked me!") class MyApplication(Gtk.Application): def __init__(self): Gtk.Application.__init__(self) def do_activate(self): win = MyWindow(self) win.show_all() def do_startup(self): Gtk.Application.do_startup(self) app = MyApplication() exit_status = app.run(sys.argv) sys.exit(exit_status)
Métodos útiles para un widget «Button»

En la línea 16, la señal «clicked» del botón se conecta a la función de retorno de llamada do_clicked() usando widget.connect(señal, función de retorno de llamada). Consulte la para obtener una explicación más detallada.

set_relief(Gtk.ReliefStyle.NONE) establece el estilo de relieve de los bordes del «Gtk.Button» a «ninguno», opuesto a Gtk.ReliefStyle.NORMAL.

Si la etiqueta de un botón es un icono del almacén, set_use_stock(True) establece la etiqueta al nombre del icono del almacén correspondiente.

Para establecer una imagen (por ejemplo, una imagen del almacén) para el botón button:

image = Gtk.Image() image.set_from_stock(Gtk.STOCK_ABOUT, Gtk.IconSize.BUTTON) button.set_image(image)

No debe establecer una etiqueta para el botón después de esto, ya que si lo hace mostrará la etiqueta y no la imagen.

Si usa set_focus_on_click(False), el botón no atrapará el foco cuando el ratón lo pulse. Esto podría ser útil en lugares como barras de herramientas, para que el foco del teclado no se quite del área principal de la aplicación.

Referencias de la API

En este ejemplo se usa lo siguiente:

GtkButton

GtkWindow