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