所谓布局,就是指控制窗体容器中各个控件(组件)的位置关系。tkinter 共有三种几何布局管理器,分别是:place布局、pack布局、grid布局。

目录

环境:

1.place 绝对布局

2.pack 相对布局

3.grid 表格布局


环境:

window 10

python 3.7

1.place 绝对布局

place():将控件放置在父控件内的特定位置

x:定义控件的绝对水平位置,默认值是0

y:定义控件的绝对垂直位置,默认值是0

import tkinter as tkroot = tk.Tk()# 位置在距离窗体左上角的(10,15)坐标处
label1 = tk.Label(bg='red', text='我是label1')
label1.place(x=10, y=15)# 位置在距离窗体左上角的(30,45)坐标处
label2 = tk.Label(bg='blue', text='我是label2')
label2.place(x=30, y=45)# 位置在距离窗体左上角的(50,75)坐标处
label3 = tk.Label(bg='yellow', text='我是label3')
label3.place(x=50, y=75)# 进入程序循环
root.mainloop()

固定坐标,按绝对布局显示,窗口大小的变化对布局没有影响

2.pack 相对布局

pack():将控件放置在父控件内之前,规划此控件在区块内的位置

fill:决定控件如何填满 parcel 的空间,可以是 X、Y、BOTH 或 NONE,此选项必须在 expand 等于 1 才有作用。

当 fill 等于 X 时,窗体会占满整个窗口 X 方向剩余的空间;当 fill 等于 Y 时,窗体会占满整个窗口 Y 方向剩余的空间;

当 fill 等于 BOTH 时,窗体会占满整个窗口剩余的空间;当 fill 等于 NONE 时,窗体维持不变。

side:定义控件放置的位置,可以是 TOP(靠上对齐)、BOTTOM(靠下对齐)、LEFT(靠左对齐)、RIGHT(靠右对齐)。

import tkinter as tkroot = tk.Tk()# 位置在平行方向的上方
label1 = tk.Label(bg='red', text='我是label1')
label1.pack(fill=tk.X, side=tk.TOP)# 位置在平行方向的下方
label2 = tk.Label(bg='blue', text='我是label2')
label2.pack(fill=tk.X, side=tk.BOTTOM)# 位置在垂直方向的左侧
label3 = tk.Label(bg='yellow', text='我是label3')
label3.pack(fill=tk.Y, side=tk.LEFT)# 位置在垂直方向的右侧
label3 = tk.Label(bg='green', text='我是label4')
label3.pack(fill=tk.Y, side=tk.RIGHT)# 进入程序循环
root.mainloop()

相对布局,窗体改变对空间有影响

3.grid 表格布局

grid() 方法将控件依照表格的行列方式,来放置在窗体或窗口内。

row:设置控件在表格中的第几列。

column:设置控件在表格中的第几栏。

import tkinter as tkroot = tk.Tk()text = []
# 将文本描述放入一个列表中
for i in range(1, 10):text.append('我是button-%d' % i)
# 创建9个button 为显示效果使用button控件
for i in range(3):for j in range(3):# 创建9个Button控件 将窗体编排成3X3的表格tk.Button(root, text=text[j+i*3]).grid(row=i, column=j)# 进入程序循环
root.mainloop()

Python tkinter 布局相关推荐

  1. Python ---Tkinter 布局管理器:place

    上一篇:Python -Tkinter 布局管理器:grid                                           The Tkinter Place Geometry ...

  2. python tkinter布局混用_[宜配屋]听图阁

    这篇文章主要介绍了python tkinter控件布局项目实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码部分: from tkinter ...

  3. python tkinter布局混用_python tkinter布局界面如何实现?

    当我们自己走入一个互联网窗口里,寻找内容,清晰而明朗,这就是涉及了一个页面布局的知识,不只是一个站点,一个网页,设置是一个窗体都是有清晰的布局,语言的编写,就是为了效率执行而存在,因为,正当大家正在学 ...

  4. python tkinter 布局_Python Tkinter Place布局管理器及用法

    Place 布局就是其他 GUI 编程中的"绝对布局",这种布局方式要求程序显式指定每个组件的绝对位置或相对于其他组件的位置. 如果要使用 Place 布局,调用相应组件的 pla ...

  5. python tkinter 布局_python tkinter学习——布局

    目录 一.pack() 二.grid() 三.place() 四.Frame() 正文 布局 一.pack() pack()有以下几个常用属性: side padx pady ipadx ipady ...

  6. python tkinter 布局_(4)python tkinter-布局

    包装布局pack() 目前对它的感觉是,当一个窗体的对象都设置完属性后,最后用它来绑定到窗体上.之后就不能再设置属性了 名称 描述 取值范围 expand 当值为"yes"时,si ...

  7. python tkinter 布局_python tkinter组件摆放方式详解

    1.最小界面组成 # 导入tkinter模块 import tkinter # 创建主窗口对象 root = tkinter.Tk() # 设置窗口大小(最小值:像素) root.minsize(30 ...

  8. python : Tkinter布局

    Frame from tkinter import * root = Tk()# 定义第一个容器 frame_left=Frame(root,bg="green") frame_l ...

  9. python如何调整按钮的位置_Python tkinter布局与按钮间距设置方式

    Python tkinter布局与按钮间距设置方式 新建label与button,并设置位置(grid) import tkinter as tk root = tk.Tk() label = tk. ...

最新文章

  1. 【Linux】 字符串和文本处理工具 grep sed awk
  2. Python使用sklearn和statsmodels构建多元线性回归模型(Multiple Linear Regression)并解读
  3. 唐山一个葬礼上的豪华车队
  4. 解决JQuery AutoComplete在IE9下出错的问题
  5. 数据结构——图:极大小连通子图、图的存储结构、图的遍历
  6. python调用电脑蜂鸣器一直响_电脑开机蜂鸣器一直响,9声滴~,什么问题?怎么处理?...
  7. FormData的使用
  8. H.264/AVC视频编解码技术详解 第一章 视频信息与压缩编码
  9. dellt服务器r修复,RE: 求助 Dell T 310服务器蓝屏
  10. mysql升级代码_phpstudy 升级mysql 及MySQL服务等问题(示例代码)
  11. python名片管理系统2.0_Python:名片管理系统2.0(增加登录功能)
  12. Spring Boot 热部署(转)
  13. 实验01 使用网络协议分析仪Wireshark分析数据链路层帧结构实验报告
  14. 什么是锐度sharpness
  15. 不一样的国外广告联盟与cpa赚钱!
  16. android+美拍加表情,美拍怎么添加表情文字在哪
  17. 使用github免费搭建个人网站详细教程
  18. win10 设备管理器中没端口选项解决方法
  19. 删除主键索引 oracle,删除主键无法删除对应索引问题 drop constraint
  20. 【学习笔记】数据结构之单链表(先进先出、先进后出)

热门文章

  1. 使用Flickr下载器批量下载Flickr的相册
  2. ActiveMQ知识概括
  3. Windows 10系统自带Virtual Private Network客户端配置连接L2TP服务器_2
  4. Python—实现Excel文件间的数据匹配(保留单元格式)—告别Vlookup!
  5. 为什么女生读博(或直博)的比例越来越高?
  6. Fat32、NTFS和exFAT格式
  7. 替换word中的软回车
  8. 王峰十问蔡文胜:BEC美链究竟是不是美图上市公司的资产?
  9. Flannel网络环境搭建:
  10. 时间的黑洞,我们的时间管理