6

Python + Gtk3で小さなアプリケーションをプログラミングしています。GtkGrid1 列 2 行の a を使用しています。

最初の行に: a GtkScrolledWindow、その中にTreeView2 列の a を置きます。

2 行目には、 a ButtonBox、その中に a GtkButton、 a 、ComboBoxおよび anotherを入れGtkButtonました。

質問: 2 番目の行 (ボタンのある一番下の行) は、ボタンの上下にスペースがありすぎるため、上のスペースを「無駄にする」ことなく、ボタンの高さと一致するようにそのセルの高さを設定するにはどうすればよいですか?そして下?

コードはここにあり、これは私のプログラムのスクリーンショットです:

ここに画像の説明を入力

4

1 に答える 1

14

列と行の間隔が均一な GtkGrid を作成しています。これは、列と行が同じサイズになることを意味します。これは、すべての列と行の間の自然な最大サイズです。

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 は、GtkBox や GtkTable のようなパッキング プロパティを持つ代わりに、GtkWidget の水平方向と垂直方向の拡張および配置フラグを尊重するコンテナーおよびレイアウト マネージャーです。

于 2013-03-27T19:52:54.507 に答える