Los botones y los dialogos son componentes importantes en el desarrollo de Interfaces, vamos a ver como agregar un boton y mostrar un dialogo o mensaje de alerta en Gtk 3 y Python.
GTK 3 es un sistema para crear interfaces graficas para windows, linux y mac, pero es mayormente usado en Linux para las interfaces graficas. Normalmente se programan las interfaces y aplicaciones usando el lenguaje de programacion C o C++, pero tambien hay ports y librerias para Python.
En este ejemplo vamos a crear una Ventana GTK 3 y le agregaremos un boton y al hacer click en el boton se mostrara una alerta.
Codigo
En el siguiente codigo se explica cada detalle en los comentarios.
### IMPORTAR LAS LIBRERIAS NECESARIAS import gi gi.require_version("Gtk","3.0") from gi.repository import Gtk class MyWindow(Gtk.Window): def __init__(self): ### INICIAR LA VENTANA PONER EL TITULO Gtk.Window.__init__(self , title ="Probando Botones") ### CREAR UNA CAJA PARA AGREGAR LOS ELEMENTOS self.box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6) self.add(self.box) # AGREGAR LA CAJA A LA VENTANA PRINCIPAL self.button1 = Gtk.Button(label="Button 1") # AGREGAR UN BOTON Y PONERLE LA ETIQUETA BUTTON 1 self.button1.connect("clicked",self.button1_on_click) # ASIGNAR EL EVENTO QUE SE EJECUTA AL HACER CLICK self.box.add(self.button1) # AGREGAR EL BOTON A LA CAJA/BOX def button1_on_click(self, widget): ## CREAR EL DIALOGO dialog = Gtk.MessageDialog( transient_for= self, flags=0, message_type=Gtk.MessageType.INFO, buttons=Gtk.ButtonsType.OK, text="Alerta, Alerta!" ) dialog.format_secondary_text("Esta es la descripcion de la alerta") dialog.run() dialog.destroy() ### CREAR LA INSTANCIA A LA VENTANA Y MOSTRAR LA VENTANA win = MyWindow() win.set_default_size(640, 480) win.connect("destroy",Gtk.main_quit) win.show_all() Gtk.main()
Para ejecutar el codigo debemos guardar el ejemplo como button1gtk3.py o cualquier nombre que ustedes requieran.
Despues ejecutar el script desde la terminal: python3 button1gtk3.py
Y el resultado sera una ventana con un boton y una alerta tal como lo describimos.
Resultado
Y listo a seguir haciendo pruebas y aprendiendo sobre Gtk 3 y Python.