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抓取网页时字符集转换问题处理方案分享
Jun 19 Python
Python中的hypot()方法使用简介
May 18 Python
Python socket编程实例详解
May 27 Python
使用Python神器对付12306变态验证码
Jan 05 Python
用python找出那些被“标记”的照片
Apr 20 Python
浅谈python requests 的put, post 请求参数的问题
Jan 02 Python
详解Python3 pandas.merge用法
Sep 05 Python
Python实现剪刀石头布小游戏(与电脑对战)
Dec 31 Python
python+selenium 脚本实现每天自动登记的思路详解
Mar 11 Python
pycharm第三方库安装失败的问题及解决经验分享
May 09 Python
解决Python 写文件报错TypeError的问题
Oct 23 Python
python编程学习使用管道Pipe编写优化代码
Nov 20 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页面消耗内存过大的处理办法
2013/03/18 PHP
深入apache host的配置详解
2013/06/09 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
php发送post请求函数分享
2014/03/06 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
php操作xml入门之cdata区段
2015/01/23 PHP
PHP获取数组最大值下标的方法
2015/05/12 PHP
PHP延迟静态绑定的深入讲解
2018/04/02 PHP
laravel异步监控定时调度器实例详解
2019/06/21 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
JS event使用方法详解
2008/04/28 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
详解Document.Cookie
2015/12/25 Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
2016/05/29 Javascript
结合代码图文讲解JavaScript中的作用域与作用域链
2016/07/05 Javascript
JS实现的驼峰式和连字符式转换功能分析
2016/12/21 Javascript
Node.js爬取豆瓣数据实例分析
2018/03/05 Javascript
使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
2018/05/01 Javascript
React 组件间的通信示例
2018/06/14 Javascript
Vue实现按钮旋转和移动位置的实例代码
2018/08/09 Javascript
bootstrap实现tab选项卡切换
2020/08/09 Javascript
python制作爬虫爬取京东商品评论教程
2016/12/16 Python
Django Admin 实现外键过滤的方法
2017/09/29 Python
在Django的View中使用asyncio的方法
2019/07/12 Python
python3字符串操作总结
2019/07/24 Python
PyQt 图解Qt Designer工具的使用方法
2019/08/06 Python
input file上传文件样式支持html5的浏览器解决方案
2012/11/14 HTML / CSS
Tory Burch英国官方网站:美国时尚生活品牌
2017/12/06 全球购物
eBay英国购物网站:eBay.co.uk
2019/06/19 全球购物
入党自我评价优缺点
2014/01/25 职场文书
2014信息公开实施方案
2014/02/22 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
家长高考寄语
2015/02/27 职场文书
远程教育集中轮训基层干部培训班学习心得体会
2016/01/09 职场文书
详细分析PHP7与PHP5区别
2021/06/26 PHP