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来开发Markdown脚本扩展的实例分享
Mar 04 Python
Python中内建函数的简单用法说明
May 05 Python
Python实现多线程抓取网页功能实例详解
Jun 08 Python
用python统计代码行的示例(包括空行和注释)
Jul 24 Python
python使用matplotlib画柱状图、散点图
Mar 18 Python
详解python多线程之间的同步(一)
Apr 03 Python
python 根据字典的键值进行排序的方法
Jul 24 Python
python字典的遍历3种方法详解
Aug 10 Python
Python namedtuple命名元组实现过程解析
Jan 08 Python
python绘图模块之利用turtle画图
Feb 12 Python
Python .py生成.pyd文件并打包.exe 的注意事项说明
Mar 04 Python
Python 详解通过Scrapy框架实现爬取CSDN全站热榜标题热词流程
Nov 11 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中获取文件扩展名的N种方法小结
2012/02/27 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
php nginx 实时输出的简单实现方法
2018/01/21 PHP
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
js中return false(阻止)的用法
2013/08/14 Javascript
jsonp原理及使用
2013/10/28 Javascript
jquery按回车提交数据的代码示例
2013/11/05 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
JavaScript中判断原生函数检查function是否是原生代码
2014/09/09 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
javascript进行四舍五入方法汇总
2014/12/16 Javascript
jquery制作漂亮的弹出层提示消息特效
2014/12/23 Javascript
JavaScript实现把rgb颜色转换成16进制颜色的方法
2015/06/01 Javascript
Javascript实现鼠标右键特色菜单
2015/08/04 Javascript
jquery日历插件datepicker用法分析
2016/01/22 Javascript
jQuery模拟实现的select点击选择效果【附demo源码下载】
2016/11/09 Javascript
Bootstrap框架实现广告轮播效果
2016/11/28 Javascript
jQuery ajax的功能实现方法详解
2017/01/06 Javascript
JavaScript实现弹窗效果代码分析
2017/03/09 Javascript
详解vue mint-ui源码解析之loadmore组件
2017/10/11 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
解决layer弹层遮罩挡住窗体的问题
2018/08/17 Javascript
详解element-ui中form验证杂记
2019/03/04 Javascript
NodeJs入门教程之定时器和队列
2019/03/08 NodeJs
JS中async/await实现异步调用的方法
2019/08/28 Javascript
JS数组方法shift()、unshift()用法实例分析
2020/01/18 Javascript
JavaScript对象属性操作实例解析
2020/02/04 Javascript
python爬虫之百度API调用方法
2017/06/11 Python
Python BS4库的安装与使用详解
2018/08/08 Python
selenium获取当前页面的url、源码、title的方法
2019/06/12 Python
Python类反射机制使用实例解析
2019/12/30 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
2020/02/06 Python
Pandas直接读取sql脚本的方法
2021/01/21 Python
Python中pass语句的作用是什么
2016/06/01 面试题
个人考核材料
2014/05/15 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书