フレームの中にいくつかのラベルが入っているグリッドをテーブルのように見せています。このグリッドは、直接子ラベルが正しく中央揃えされた垂直ボックスに挿入されます(グリッドと同じ方法でボックスにパックされます)。Gtk.Boxを縦方向のGtk.Boxの中に水平に配置する方法は?
私の単純化したコードはこれです:
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
window = Gtk.Window()
g = Gtk.Grid() # this should be in the horizontal center of the window
g.attach(Gtk.Label("This should be centered but it is not."), 0, 0, 1, 1)
b = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
b.pack_start(g, True, False, 0) # The same behavior with: b.pack_start(g, True, True, 0)
b.pack_start(Gtk.Label("This label is centered as it should be. Try to resize the window."), True, False, 0)
window.add(b)
window.connect("delete-event", Gtk.main_quit)
window.show_all()
Gtk.main()
、これは、それが生成するGUIである: