我有一个 Gtk::HBox 应该只包含两个元素。然而,构造函数 new Gtk::HBox() 创建了一个包含三个元素的盒子,所以当我显示我的窗口时,Gtk 希望我在其中放置第三个元素的地方很丑陋。
我认为 Gtk api 会提供一种简单的方法来设置孩子的数量,但事实并非如此。由于 Glade 允许我创建一个包含两个元素的 HBox,我想它可以完成,但现在我需要使用 c++ 代码来完成。
很奇怪,我在谷歌上找不到这么简单的问题的答案,我一定错过了什么……有什么想法吗?
您应该将true
andexpand
参数fill
传递给Gtk::Box::pack_start():
hbox.pack_start(child, true, true);
或者调用它更简单的覆盖:
hbox.pack_start(child);