Python – Contenedor de rejilla en GTK+ 3

Gtk.Grides un contenedor que organiza sus widgets secundarios en filas y columnas, sin la especificación de las dimensiones en el constructor. Los niños se agregan usando Gtk.Grid.attach(). Pueden abarcar varias filas o columnas.

El Gtk.Grid.attach()método toma cinco parámetros:

child: el Gtk.Widgetde añadir.

left: el número de columna para adjuntar el lado izquierdo de child.

top: indica el número de fila para adjuntar el lado superior de child.

width: indica el número de columnas que childabarcará.

height: indica el número de filas que childabarcará.

También es posible agregar un niño junto a un niño existente usando Gtk.Grid.attach_next_to().

El Gtk.Grid.attach_next_tométodo toma cinco parámetros:

child:Gtk.Widget para agregar.

sibling: un childwidget existente de a Gtk.Grido Ninguno. El widget secundario se colocará junto a sibling.

side: Gtk.PositionTypeindicando el lado del hermano.

width: indica el número de columnas childque abarcará el widget.

height: indica el número de filas child que abarcará el widget

Siga los pasos a continuación:

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

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

Ejemplo :

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 GridWin(Gtk.Window):
    def __init__(self):
        Gtk.Window.__init__(self, title ="GfG")
  
        grid = Gtk.Grid()
        self.add(grid)
  
        button1 = Gtk.Button(label ="Button 1")
        button2 = Gtk.Button(label ="Button 2")
        button3 = Gtk.Button(label ="Button 3")
        button4 = Gtk.Button(label ="Button 4")
        button5 = Gtk.Button(label ="Button 5")
        button6 = Gtk.Button(label ="Button 6")
  
        grid.add(button1)
  
        # With in parentheses child, left, top, width,
        # height respectively
        grid.attach(button2, 1, 0, 2, 1)
  
        # With in parentheses child, sibling, left, top, width,
        # height respectively 
        grid.attach_next_to(button3, button1, Gtk.PositionType.BOTTOM, 1, 2)
        grid.attach_next_to(button4, button3, Gtk.PositionType.RIGHT, 1, 1)
        grid.attach(button5, 1, 2, 1, 1)
        grid.attach_next_to(button6, button4, Gtk.PositionType.RIGHT, 1, 2)
  
  
win = GridWin()
win.connect("destroy", Gtk.main_quit)
win.show_all()
Gtk.main()

Producción :

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 *