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过滤函数filter()使用自定义函数过滤序列实例
Aug 26 Python
Python实现删除列表中满足一定条件的元素示例
Jun 12 Python
python中dir()与__dict__属性的区别浅析
Dec 10 Python
matplotlib实现热成像图colorbar和极坐标图的方法
Dec 13 Python
python频繁写入文件时提速的方法
Jun 26 Python
详解Django admin高级用法
Nov 06 Python
python反转列表的三种方式解析
Nov 08 Python
python判断两个序列的成员是否一样的实例代码
Mar 01 Python
python GUI库图形界面开发之PyQt5布局控件QGridLayout详细使用方法与实例
Mar 06 Python
解决python虚拟环境切换无效的问题
Apr 30 Python
python代码区分大小写吗
Jun 17 Python
Python接口自动化测试的实现
Aug 28 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
PHP 的 __FILE__ 常量
2007/01/15 PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
2015/09/20 PHP
php获得客户端浏览器名称及版本的方法(基于ECShop函数)
2015/12/23 PHP
php模板引擎技术简单实现
2016/03/15 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
Laravel框架实现简单的学生信息管理平台案例
2019/05/07 PHP
IE6浏览器下resize事件被执行了多次解决方法
2012/12/11 Javascript
Javascript中valueOf与toString区别浅析
2013/03/19 Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
2013/04/02 Javascript
js使用数组判断提交数据是否存在相同数据
2013/11/27 Javascript
jquery实现弹出div,始终显示在屏幕正中间的简单实例
2014/03/08 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
浅谈JavaScript的事件
2015/02/27 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
2015/12/03 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
2016/01/22 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
详解在vue-cli项目中使用mockjs(请求数据删除数据)
2017/10/23 Javascript
angular4自定义组件非input元素实现ngModel双向数据绑定的方法
2018/12/28 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
vue-next/runtime-core 源码阅读指南详解
2019/10/25 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
Python实现向QQ群成员自动发邮件的方法
2014/11/19 Python
用Python实现web端用户登录和注册功能的教程
2015/04/30 Python
Python检测字符串中是否包含某字符集合中的字符
2015/05/21 Python
Python图像处理模块ndimage用法实例分析
2019/09/05 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
Harman Audio官方商店:购买JBL、Harman Kardon、Infinity和AKG
2019/12/05 全球购物
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
大学生自我鉴定评语
2014/01/27 职场文书
仓库规划计划书
2014/04/28 职场文书
羽毛球社团活动总结
2014/06/27 职场文书
学前教育专业求职信
2014/09/02 职场文书
职场领导同事生日简短祝福语
2019/08/06 职场文书