pyGTK_读书笔记_Tutorial Chapter 4_Packing Widgets

来源:互联网 发布:统计淘宝消费金额 编辑:程序博客网 时间:2024/05/17 02:34

pyGTK利用部件容器进行窗口的布局设计, 部件容器并不可见,其作用是用来排列多个部件对象,比如多个按钮。


首先我们有两种Box部件容器: 利用gtk.HBox()创建的水平Box容器;和利用gtk.VBox()创建的垂直Box容器


对于水平Box容器中部件对象的排列方式,pack_start()决定排列按照从左到右的次序;而pack_end()决定为从右到左的排列次序。

对于垂直Box容器中部件对象的排列方式,pack_start()决定排列按照从上到下的次序;而pack_end()决定为从下到上的排列次序。


关于pack_start()方法的参数解释

box.pack_start(child, expand, fill, padding)

box: 定义的Box容器对象;

child: 待排列的部件对象;

expand: 控制是否展开部件,以便填充box容器的额外区域时的box容器的大小扩展到分配的尺寸。expand=False, 则box容器的尺寸缩小到刚好容纳其中的部件对象。

fill: fill=True把额外的区域分配给对象; fill=False,以部件对象周围的额外填充的形式。只在expand=True的情况下生效。


区别spacing和padding:

padding是加在部件对象的一边的,用在部件排列中。

spacing用于生成box时,加在部件对象之间。

hbox = gtk.HBox(homogeneous=False, spacing=0)

示例如下:

       hbox1 = gtk.HBox(True, 20)

       hbox1.pack_start(btn1, True, True, 0)

       hbox1.pack_start(btn2, True, True, 0)

       hbox1.pack_start(btn3, True, True, 0)



       hbox1 = gtk.HBox(True, 20)

       hbox1.pack_start(btn1, True, True, 20)

       hbox1.pack_start(btn2, True, True, 20)

       hbox1.pack_start(btn3, True, True, 20)











原创粉丝点击