Python – Crea una caja en GTK+ 3

Requisito previo – Python – Crear ventana, botón en GTK+ 3

En GTK+, en lugar de especificar la posición y el tamaño de cada widget en la ventana, puede organizar sus widgets en filas, columnas y/o tablas. El tamaño de su ventana se determina automáticamente, según los tamaños de los widgets que contiene. Y los tamaños de los widgets están, a su vez, determinados por la cantidad de texto que contienen. El perfeccionamiento del diseño se puede completar especificando la distancia de relleno y los valores de centrado de los widgets.

GTK+ organiza los widgets jerárquicamente, utilizando contenedores. Hay dos tipos de contenedores, contenedores de un solo hijo y contenedores de varios hijos. Los más utilizados son las cajas (Gtk.Box)y rejillas verticales u horizontales (Gtk.Grid).

Siga los pasos a continuación:

  1. importar módulo GTK+ 3.
  2. Crear ventana principal.
  3. Crear Caja.
  4. Crear botón.

Nota: En IDE como Pycharm, podemos instalar un paquete llamado PyGObject para usar GTK+ 3.

Las cajas son contenedores invisibles en los que podemos empaquetar nuestros widgets. Al empaquetar widgets en un cuadro horizontal, los objetos se insertan horizontalmente Gtk.Box.pack_start()(de izquierda a derecha) o Gtk.Box.pack_end()(de derecha a izquierda). En un cuadro vertical, los widgets se empaquetan de arriba a abajo o viceversa.

Ejemplo :
Creación de una caja con botón.

import gi
# Since a system can have multiple versions
# of GTK + installed, we want to make 
# sure that we are importing GTK + 3.
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
  
  
class MyWindow(Gtk.Window):
    def __init__(self):
        Gtk.Window.__init__(self, title ="GfG")
  
        # Create a horizontally orientated box container 
        # having spacing 6 pixels 
        self.box = Gtk.Box(spacing = 6)
        self.add(self.box)
  
        # Add a button to box container.
        # Gtk.Box.pack_start() widgets are positioned from left to right
        self.button1 = Gtk.Button(label ="Click Here")
        self.button1.connect("clicked", self.on_button1_clicked)
        self.box.pack_start(self.button1, True, True, 0)
  
    def on_button1_clicked(self, widget):
        print("Welcome to Geeks for Geeks.")
  
win = MyWindow()
win.connect("destroy", Gtk.main_quit)
win.show_all()
Gtk.main()

Salida:

al hacer clic en esto obtenemos.

Publicación traducida automáticamente

Artículo escrito por amalchandranmv y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *