packer是Tk的几何管理机制之一。几何管理器用于指定小部件在其容器内的相对位置-它们的共同主人。与更笨重的放置器 (使用较少,我们在这里不介绍) 相比,封隔器采用定性关系规范 — 上面,左边,填充,等等 — 把一切都计算出来,为你确定准确的位置坐标。
任何主小部件的大小由内部 “从小部件” 的大小决定。packer用于控制从窗口小部件在其打包的主窗口中出现的位置。您可以将小部件打包到框架中,并将框架打包到其他框架中,以实现所需的布局。此外,一旦打包,就会动态调整布置以适应对配置的增量更改。
请注意,小部件在使用几何管理器指定其几何图形之前不会出现。忽略几何规范是一个常见的早期错误,然后在创建小部件但什么也没有出现时感到惊讶。小部件只有在应用了例如packer的pack() 方法之后才会出现。
可以使用关键字-选项/值对调用pack() 方法,该关键字-选项/值对控制小部件在其容器中的显示位置,以及调整主应用程序窗口的大小时的行为。以下是一些例子:

  1. fred.pack() # defaults to side = "top"
  2. fred.pack(side="left")
  3. fred.pack(expand=1)

Packer 选项

有关packer及其可用选项的更多信息,请参阅约翰Ousterhout的书的手册页和第183页。

anchor

锚点类型。表示包装机将在其包裹中放置每个从机的位置。

expand

布尔值,0或1。

fill

合法值: 'x', 'y', 'both', 'none'.

ipadx 和 ipady

从部件两侧的指定距离的内部填充。

padx 和 pady

从部件每一侧的指定距离的外部填充。

side

合法值是: 'left', 'right', 'top', 'bottom'.