编程语言
首页 > 编程语言> > python – 如何调整GtkGrid单元格的大小?

python – 如何调整GtkGrid单元格的大小?

作者:互联网

我正在使用Python Gtk3编写一个小应用程序.我正在使用一列两行的GtkGrid.

在第一行中我放了一个:GtkScrolledWindow,里面是一个有两列的TreeView.

在第二行中我放了一个:ButtonBox,里面有一个GtkButton,一个ComboBox和另一个GtkButton.

问题是:第二行(带按钮的底部)在按钮上方和下方有太多空间,所以我该如何设置该单元格的高度以匹配按钮的高度,而不会“浪费”上面的空间以下?

代码是here,这是我的程序的屏幕截图:

解决方法:

你正在为列和行创建具有均匀间距的GtkGrid;这意味着您的列和行将获得相同的大小,这是所有列和行之间的最大自然大小.

在创建Grid时,删除row_homogeneous = True属性.如果你想要TreeView扩展,你应该将hexpand和vexpand属性设置为True,即:

    # creamos una grilla
    self.grid = Gtk.Grid(column_homogeneous=True,
                         column_spacing=10,
                         row_spacing=10)

    [...]

    # creamos el TreeView
    self.treeview = Gtk.TreeView(model=self.liststore)
    # set the TreeView to expand both horizontally and vertically
    self.treeview.set_hexpand(True)
    self.treeview.set_vexpand(True)

GtkGrid是一个容器和布局管理器,它尊重GtkWidget上的水平和垂直扩展和对齐标志,而不是像GtkBox或GtkTable那样具有打包属性.

标签:python,user-interface,gtk3,pygobject
来源: https://codeday.me/bug/20190725/1535059.html