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之Python安装
Sep 12 Python
Python中非常实用的一些功能和函数分享
Feb 14 Python
用Python解析XML的几种常见方法的介绍
Apr 09 Python
Python实现的数据结构与算法之双端队列详解
Apr 22 Python
Python的pycurl包用法简介
Nov 13 Python
使用python进行拆分大文件的方法
Dec 10 Python
python使用yield压平嵌套字典的超简单方法
Nov 02 Python
详细分析Python可变对象和不可变对象
Jul 09 Python
python 如何利用argparse解析命令行参数
Sep 11 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
Jan 08 Python
matplotlib相关系统目录获取方式小结
Feb 03 Python
Python基础知识学习之类的继承
May 31 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
PHP5中的时间相差8小时的解决办法
2008/03/28 PHP
php获取地址栏信息的代码
2008/10/08 PHP
PHP数组对比函数,存在交集则返回真,否则返回假
2011/02/03 PHP
Nginx下配置codeigniter框架方法
2015/04/07 PHP
PHP中preg_match函数正则匹配的字符串长度问题
2015/05/27 PHP
php阳历转农历优化版
2016/08/08 PHP
PHP实现将标点符号正则替换为空格的方法
2017/08/09 PHP
PHP实现登录验证码校验功能
2018/05/17 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
2020/03/23 PHP
Js组件的一些写法
2010/09/10 Javascript
Jquery Autocomplete 结合asp.net使用要点
2010/10/29 Javascript
jQuery使用技巧简单汇总
2013/04/18 Javascript
jquery 漂亮的删除确认和提交无刷新删除示例
2013/11/13 Javascript
js 赋值包含单引号双引号问题的解决方法
2014/02/26 Javascript
js的touch事件的实际引用
2014/10/13 Javascript
jQuery中的通配符选择器使用总结
2016/05/30 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
在Vue项目中使用Typescript的实现
2019/12/19 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
Python编程中字符串和列表的基本知识讲解
2015/10/14 Python
Python的多维空数组赋值方法
2018/04/13 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
css3 图片圆形显示 如何CSS将正方形图片显示为圆形图片布局
2014/10/10 HTML / CSS
以工厂直接定价的传奇性能:Ben Hogan Golf
2019/01/04 全球购物
部队领导证婚词
2014/01/12 职场文书
应用外语系自荐信
2014/06/26 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
股权转让协议范本
2014/12/07 职场文书
2015学生会文艺部工作总结
2015/04/03 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
上课迟到检讨书
2015/05/06 职场文书
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技
各国货币符号大全
2022/02/17 杂记