The Packer

[ Next:结合元件变数 | Previous: 设定选项 | 内容 ]


The Packer

packer 是tk的几何管理的一种机制,查看 Tkinter 类别概述 文件。

几何管理员被用来指定元件在他们的容器内的相关定位 – 他们的相互主宰,相对于麻烦的 placer (比较少用而且我们也不在此讨论),packer 采用具品质的关系格式 – above、 to the left of、 filling等等 – 并且为你解决所有事情来决定精确的定位座标。

任何主宰元件的尺寸决定于 “slave widgets” 内的尺寸,打包器被用来控制从属元件出现在他们被打包的主元件里的位置,你可以打包元件到框架内而框架又可以打包进其他的框架内,这样你可以完成你想要的布置的方式,另外一旦它被打包这个配置可以被动态调整来容纳新增的变动给组态。

注意元件会直到他们使用几何管理员来指定后才会出现,省略了几何规格是早期常见的错误,然后我们会很惊讶元件已经建构却没有显示而感到惊讶,元件只在有几何规格后才能显示,例如打包器的 pack() 方法。

pack() 方法可以用关键字-选项/直的配对方式来呼叫,这个配对是用来控制元件出现在容器的位置,以及当主应用程式的视窗尺寸变动时它会发生什么行为,这里有些例子:

fred.pack() #defaults to side = “top”
fred.pack(side = “left”)
fred.pack(expand = 1)

打包器选项

更多关于打包器及其可用的选项,查看线上文件及John Ousterhout该书p.183页。

anchor
锚点型态,指示打包器要放置每个从属元件在他的小包中的位置。
expand
布林值 0 或 1
fill
合法值: “x”、 “y”、 “both”、 “none”。
ipadxipady
一种距离 – 定义从属元件每一边的内部边界的距离。
padxpady
一种距离 – 定义从属元件每一边的外部边界的距离。
side
合法值: “left”、 “right”、 “top”、”bottom”,被内含的元件(从属)被打包在相对于主元件所指定的某一边。

>

Comments are closed.