Search code examples
pythongtk

Python3, Gtk3 - GtkGrid expanding


A GtkWindow containing a GtkGrid containing some GtkLabels won't expand when the window is grown. I want the grid to expand horizontally.

grid.set_hexpand(True) #No result
grid.expand = True     #No result

The GtkLabel in the rightmost column is set to align right so I can accurately see if it's being expanded or not:

label.set_halign(Gtk.Align.END)

Am I misunderstanding how a grid works? (A GtkTable had a set amount of columns, perhaps the GtkGrid doesn't and relies on it's sub elements being set to expand?)


Solution

  • If you want a GtkGrid to expand horizontally, you need to set the Gtk.Widget:hexpand and Gtk.Widget:hexpand-set properties of one the widgets contained in the grid.

    Just use

    label.set_hexpand(True)
    

    The Gtk.Widget.set_hexpand method automatically sets both properties.