PyGTK Box类
gtk.Box 类是一个抽象类,定义了一个容器的功能,在矩形区域中放置小部件。gtk.HBox 和 gtk.VBox 小部件是其派生类。
gtk.HBox 中的子小部件水平排列在同一行中。而 gtk.VBox 的子小部件垂直排列在同一列中。
gtk.Box 类使用以下构造函数:
homogeneous属性默认为True。因此,所有子部件都被给予相等的分配。
gtk.Box使用布局机制来将子部件放置在其中,并参照特定的位置,可以是开始或结束。pack_start()方法从开始到结束放置部件。相反,pack_end()方法将部件从结束位置反向放置。或者,您可以使用与pack_start()类似的add()方法。
以下方法适用于gtk.HBox和gtk.VBox:
- gtk_box_pack_start ()
-
gtk_box_pack_end ()
gtk_box_pack_start ()
此方法将 child 添加到盒子中,并参照盒子的开始位置进行布局。
以下是参数 −
- child − 要添加到盒子中的小部件对象
-
expand − 如果要给child提供额外空间,则设置为True。额外空间在所有的子小部件之间平分。
-
fill − 如果为True,则将额外的空间分配给child。否则,该参数被用作填充。
-
padding − 这是盒子中小部件之间的像素间隔。
gtk_box_pack_end ()
这将child添加到盒子中,并将其相对于盒子末端进行封装。
以下是参数:
- child −这是要添加的小部件对象。
-
expand −如果child需要在框中获得额外空间,则设置为True。这个额外的空间会被均分给所有的子小部件。
-
fill −如果为True,则额外的空间将分配给child,否则用作填充。
-
padding −这是小部件之间的像素间距。
set_spacing (spacing) 是一个设置小部件间距的函数,以像素为单位。
add (widget) 方法是从gtk.Container类继承而来的。它将widget添加到容器中。这个方法可以代替pack_start()方法。
示例
在下面给出的示例中,顶层窗口包含一个垂直框(gtk.VBox对象box)。它再包含一个VBox对象vb和一个HBox对象hb。在上面的框中,一个标签、一个输入小部件和一个按钮被垂直放置。在下面的框中,另外一组标签、输入小部件和按钮也被垂直放置。
观察以下代码:
以上代码将产生以下输出−