Tinker 布局管理——grid,pack,place用法

pack、grid 和 place 均用于管理同在一个父组件下的所有组件的布局,其中:

  • pack 是按添加顺序排列组件
  • grid 是按行/列形式排列组件
  • place 则允许程序员指定组件的大小和位置

grid

grid(**options)

选项含义
column- 指定组件插入的列(0 表示第 1 列)
- 默认值是 0
row指定组件插入的行(0 表示第 1 行)
columnspan指定用多少列(跨列)显示该组件
rowspan指定用多少行(跨行)显示该组件
in_- 将该组件放到该选项指定的组件中
- 指定的组件必须是该组件的父组件
ipadx指定水平方向上的内边距
ipady指定垂直方向上的内边距
padx指定水平方向上的外边距
pady指定垂直方向上的外边距
sticky- 控制组件在 grid 分配的空间中的位置
- 可以使用 N, E, S, W 以及它们的组合来定位(EWSN代表东西南北,上北下南左西右东)
- 使用加号(+)表示拉长填充,例如 N + S 表示将组件垂直拉长填充网格,N + S + W + E 表示填充整个网格
- 不指定该值则居中显示

grid_columnconfigure(index, ** options)

  • 设置列的属性
  • 注意:设置的是该组件所拥有的 grid 的列
  • 可以设置的选项及含义如下:
选项含义
minsize指定该列的最小宽度
pad指定该列中最大网格的水平边距
weight1. 指定列与列之间的相对距离
2. 默认值是 0
3. 这个你比较难理解,小甲鱼还是详细解说下:初创建窗口的时候,grid 会自动根据组件的尺寸分配窗口的尺寸,当你拉伸窗口的尺寸时就会有空白显示出来。这个选项正是指定列与列之间是否填充空白,默认是不填充的。另外,该选项的值是指定填充空白的倍数,例如 weight = 2 的列会比 weight = 1 的列填充多一倍的空白。所以需要平均填充的话,只需要所有的列都设置 weight = 1 即可。

grid_rowconfigure(index, options)

  • 设置行的属性
  • 注意:设置的是该组件所拥有的 grid 的行
  • 类似于上面的grid_columnconfigure

place

place(**options)

下方表格详细列举了各个选项的具体含义和用法:

选项含义
relx1. 指定该组件相对于父组件的水平位置
2. 取值范围 0.0 ~ 1.0 (0.5表示在正中间)
rely1. 指定该组件相对于父组件的垂直位置
2. 取值范围 0.0 ~ 1.0
relheight1. 指定该组件相对于父组件的高度
2. 取值范围 0.0 ~ 1.0
relwidth1. 指定该组件相对于父组件的宽度
2. 取值范围 0.0 ~ 1.0
anchor1. 控制组件在 place 分配的空间中的位置
2. N, NE, E, SE, S, SW, W, NW, 或 CENTER 来定位(EWSN代表东西南北,上北下南左西右东)
3. 默认值是 NW
bordermode1. 指定边框模式(INSIDE 或 OUTSIDE)
2. 默认值是 INSIDE
height指定该组件的高度(像素)
width指定该组件的宽度(像素)
x1. 指定该组件的水平偏移位置(像素)
2. 如同时指定了 relx 选项,优先实现 relx 选项
y1. 指定该组件的垂直偏移位置(像素)
2. 如同时指定了 rely 选项,优先实现 rely 选项
in_1. 将该组件放到该选项指定的组件中
2. 指定的组件必须是该组件的父组件

pack

pack(**options)

下方表格详细列举了各个选项的具体含义和用法:

选项含义
ipadx指定水平方向上的内边距
ipady指定垂直方向上的内边距
padx指定水平方向上的外边距
pady指定垂直方向上的外边距
fill1. 指定填充 pack 分配的空间
2. 默认值是 NONE,表示保持子组件的原始尺寸
3. 还可以使用的值有:X(水平填充),Y(垂直填充)和 BOTH(水平和垂直填充)
in_1. 将该组件放到该选项指定的组件中
2. 指定的组件必须是该组件的父组件
side1. 指定组件的放置位置
2. 默认值是 TOP
3. 还可以设置的值有:LEFT,BOTTOM,RIGHT
anchor1. 控制组件在 pack 分配的空间中的位置
2. N, NE, E, SE, S, SW, W, NW, 或 CENTER 来定位(EWSN代表东西南北,上北下南左西右东)
3. 默认值是 CENTER
expand1. 指定是否填充父组件的额外空间
2. 默认值是 False

来源:www.fishc.com

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值