Tkinter教程-布局管理器

Tkinter教程-布局管理器 目录树

Tk布局管理器
来自http://tpleina.com/2019/06/1134936693.html

TKinter布局管理器能够控制组件位置摆放,当调整窗口的大小,布局管理器会自动调整窗口中各组件的大小和位置

TKinter布局管理器提供三种布局方式:

  • Pack布局
  • Grid布局
  • Place布局

Pack布局管理器

一个复杂的界面,其实都可以分解为水平排列和垂直排列,Pack 布局既可实现水平排列,也可实现垂直排列,然后再通过多个容器进行组合,就可以开发出更复杂的界面

# -*- coding:utf-8 -*-
from tkinter import * 

if __name__ == "__main__":
    mw = Tk()
    # 设置窗口标题
    mw.title('Pack布局')
    for i in range(3):
        lab = Label(mw, text="第%d个Label" % (i + 1), bg='#326191')
        # 调用pack进行布局
        lab.pack()
    mw.mainloop()

上面程序创建了一个窗口,在窗口内添加了三个 Label,并使用Pack 布局

组件支持pack方法,其常用参数:

  • anchor:指定组件摆放容器内位置,前提是可用空间大于组件大小,参数取值:
    • N(北,代表上)
    • E(东,代表右)
    • S(南,代表下)
    • W(西,代表左)
    • NW(西北,代表左上)
    • NE(东北,代表右上)
    • SW(西南,代表左下)
    • SE(东南,代表右下)
    • CENTER(中,默认值)
  • expand:是否拉伸,bool值,当父容器大于子组件时
  • fill:设置组件是否沿水平或垂直方向填充,参数取值:
    • NONE 表示不填充
    • X
    • Y
    • BOTH 表示沿着两个方向填充
  • ipadx:指定组件在 x 方向(水平)上的内部留白大小
  • ipady:指定组件在 y 方向(水平)上的内部留白大小
  • padx:指定组件在 x 方向(水平)上与其他组件的间距大小
  • pady:指定组件在 y 方向(水平)上与其他组件的间距大小
  • side:设置组件的添加位置,参数取值:
    • TOP
    • BOTTOM
    • LEFT
    • RIGHT

使用Pack布局更复杂例子

# -*- coding:utf-8 -*-
from tkinter import *

class App(object):
    def __init__(self, mw):
        self.mw = mw
        self.initWidgets()

    def initWidgets(self):
        # 创建第一个容器
        fm1 = Frame(self.mw)
        # 该容器放在左边排列
        fm1.pack(side=LEFT, fill=BOTH, expand=YES)
        # 向fm1中添加3个按钮
        # 设置按钮从顶部开始排列,且按钮只能在垂直(X)方向填充
        Button
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值