Python tkinter三种布局实例详解


Posted in Python onJanuary 06, 2020

这篇文章主要介绍了Python tkinter三种布局实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、pack布局举例

#
pack布局案例
import tkinter
baseFrame = tkinter.Tk()
# 以下代码都是创建一个组件, 然后布局
btn1 = tkinter.Button(baseFrame, text =
	"A")
btn1.pack(side = tkinter.LEFT, expand =
	tkinter.YES, fill = tkinter.Y)
​
btn2 = tkinter.Button(baseFrame, text =
	"B")
btn2.pack(side = tkinter.TOP, expand =
	tkinter.YES, fill = tkinter.BOTH)
​
btn2 = tkinter.Button(baseFrame, text =
	"C")
btn2.pack(side = tkinter.RIGHT, expand =
	tkinter.YES, fill = tkinter.NONE)
​
btn2 = tkinter.Button(baseFrame, text =
	"D")
btn2.pack(side = tkinter.LEFT, expand =
	tkinter.NO, fill = tkinter.Y)
​
btn2 = tkinter.Button(baseFrame, text =
	"F")
btn2.pack(side = tkinter.BOTTOM, expand =
	tkinter.YES)
​
btn2 = tkinter.Button(baseFrame, text =
	"G")
btn2.pack(anchor = tkinter.SE)
​
baseFrame.mainloop()

Python tkinter三种布局实例详解

二、grid布局举例

1.通用使用方式:组件对象,grid(设置.......)

2.利用row,column编号,都是从0开始

3.sticky:N\E\S\W表示上下左右,用来决定组件从哪个方向开始

4.支持ipadx,padx等参数,跟pack函数含义一样

5.支持rowspan,columnspan,表示跨行,跨列数量

#
pack布局案例
import tkinter
# baseFrame = tkinter.Tk()
## 以下代码都是创建一个组件, 然后布局
# btn1 = tkinter.Button(baseFrame, text =
	"A")
# btn1.pack(side = tkinter.LEFT, expand =
	tkinter.YES, fill = tkinter.Y)
#
# btn2 = tkinter.Button(baseFrame, text =
	"B")
# btn2.pack(side = tkinter.TOP, expand =
	tkinter.YES, fill = tkinter.BOTH)
#
# btn2 = tkinter.Button(baseFrame, text =
	"C")
# btn2.pack(side = tkinter.RIGHT,
	expand = tkinter.YES, fill = tkinter.NONE
)
#
# btn2 = tkinter.Button(baseFrame, text =
	"D")
# btn2.pack(side = tkinter.LEFT, expand =
	tkinter.NO, fill = tkinter.Y)
#
# btn2 = tkinter.Button(baseFrame, text =
	"F")
# btn2.pack(side = tkinter.BOTTOM,
	expand = tkinter.YES)
#
# btn2 = tkinter.Button(baseFrame, text =
	"G")
# btn2.pack(anchor = tkinter.SE)
#
#
# baseFrame.mainloop()
​
baseFrame2 = tkinter.Tk()
​
lb1 = tkinter.Label(baseFrame2, text =
	"账号:")
lb1.grid(row = 0, sticky = tkinter.W)
tkinter.Entry(baseFrame2).grid(row = 0,
	column = 1, sticky = tkinter.E)
​
lb2 = tkinter.Label(baseFrame2, text =
	"密码:")
lb2.grid(row = 1, sticky = tkinter.W)
tkinter.Entry(baseFrame2).grid(row = 1,
	column = 1, sticky = tkinter.E)
​
button = tkinter.Button(baseFrame2,
	text = "登录").grid(row = 2, column = 1,
	sticky = tkinter.E)
baseFrame2.mainloop()

Python tkinter三种布局实例详解

三、place布局

1.明确方位的摆放

2.相对位置布局,随意改变窗口大小会导致混乱。

3.使用place函数,分为绝对布局和相对布局,绝对布局使用x,y参数

4.相对布局使用relx.rely,relheight,relwidth.

四、源码

D61_ThreeFrameOfTkinter.py

https://github.com/ruigege66/Python_learning/blob/master/D61_ThreeFrameOfTkinter.py​

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之序列详解
Aug 29 Python
python批量生成本地ip地址的方法
Mar 23 Python
python机器学习之随机森林(七)
Mar 26 Python
Python的numpy库中将矩阵转换为列表等函数的方法
Apr 04 Python
用python实现k近邻算法的示例代码
Sep 06 Python
Mac下Anaconda的安装和使用教程
Nov 29 Python
Python3爬虫学习之爬虫利器Beautiful Soup用法分析
Dec 12 Python
python实时获取外部程序输出结果的方法
Jan 12 Python
Python3列表内置方法大全及示例代码小结
May 10 Python
Python实现把多维数组展开成DataFrame
Nov 30 Python
python3读取csv文件任意行列代码实例
Jan 13 Python
python如何读取和存储dict()与.json格式文件
Jun 25 Python
Python有参函数使用代码实例
Jan 06 #Python
python通过移动端访问查看电脑界面
Jan 06 #Python
基于pytorch 预训练的词向量用法详解
Jan 06 #Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
Jan 06 #Python
Python连接字符串过程详解
Jan 06 #Python
pytorch中的自定义数据处理详解
Jan 06 #Python
如何基于Python实现自动扫雷
Jan 06 #Python
You might like
深入解析Session是否必须依赖Cookie
2013/08/02 PHP
php curl请求信息和返回信息设置代码实例
2015/04/27 PHP
PHP编程 SSO详细介绍及简单实例
2017/01/13 PHP
laravel实现前后台路由分离的方法
2019/10/13 PHP
网页上的Javascript编辑器和代码格式化
2010/04/25 Javascript
js实现连个数字相加而不是拼接的方法
2014/02/23 Javascript
Uploadify上传文件方法
2016/03/16 Javascript
jQuery中$.each()函数的用法引申实例
2016/05/12 Javascript
Vue.js中数组变动的检测详解
2016/10/12 Javascript
DOM 事件的深入浅出(一)
2016/12/05 Javascript
在Vue项目中使用d3.js的实例代码
2018/05/01 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
JavaScript键盘事件常见用法实例分析
2019/01/03 Javascript
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
python正常时间和unix时间戳相互转换的方法
2015/04/23 Python
Python如何为图片添加水印
2016/11/25 Python
Python使用Turtle模块绘制五星红旗代码示例
2017/12/11 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
python模块导入的细节详解
2018/12/10 Python
Python进程间通信Queue消息队列用法分析
2019/05/22 Python
python单向循环链表原理与实现方法示例
2019/12/03 Python
在pycharm中为项目导入anacodna环境的操作方法
2020/02/12 Python
CSS3 2D模拟实现摩天轮旋转效果
2016/11/16 HTML / CSS
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
Linux开机引导的步骤是什么
2014/02/26 面试题
护理职业应聘自荐书
2013/09/29 职场文书
高考自主招生自荐信
2013/10/20 职场文书
会计专业个人求职信范文
2014/01/08 职场文书
党员教师四风问题对照检查材料
2014/09/26 职场文书
2014年幼儿园园务工作总结
2014/12/05 职场文书
2015年教学管理工作总结
2015/05/20 职场文书
2015年学校团委工作总结
2015/05/26 职场文书
canvas绘制折线路径动画实现
2021/05/12 Javascript
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis
nginx反向代理配置去除前缀案例教程
2021/07/26 Servers
什么是clearfix (一文搞清楚css清除浮动clearfix)
2023/05/21 HTML / CSS