Python tkinter三种布局实例详解

作者:yaominghui 时间:2022-11-28 11:23:44 

这篇文章主要介绍了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

来源:https://www.cnblogs.com/ruigege0000/p/12147625.html

标签:Python,tkinter
0
投稿

猜你喜欢

  • Python时间操作之pytz模块使用详解

    2023-05-10 02:57:17
  • python遗传算法之单/多目标规划问题

    2021-09-09 20:27:24
  • 浅谈解决360兼容模式浏览器的方法

    2023-09-17 01:11:39
  • django配置app中的静态文件步骤

    2021-03-15 21:43:57
  • python在地图上画比例的实例详解

    2023-06-22 20:54:00
  • Python运行出现DeprecationWarning的问题及解决

    2022-01-14 05:26:23
  • python paramiko连接ssh实现命令

    2022-03-29 02:29:22
  • 如何利用python提取字符串中的数字

    2022-12-09 10:32:13
  • python3.6连接mysql数据库及增删改查操作详解

    2024-01-23 22:27:27
  • python3设计模式之简单工厂模式

    2021-02-16 15:51:18
  • Vue动态组件component标签的用法大全

    2024-05-29 22:28:33
  • Python实现的数据结构与算法之快速排序详解

    2022-03-03 16:49:17
  • SQL Server 2000的视图中必须小心使用*符号

    2008-12-05 15:38:00
  • python连接sql server乱码的解决方法

    2023-06-27 07:25:17
  • python实现贪吃蛇游戏源码

    2021-07-22 12:45:24
  • 用非动态SQL Server SQL语句来对动态查询进行执行

    2024-01-19 08:55:05
  • Python的时间模块datetime详解

    2023-10-17 01:36:48
  • python中Tkinter 窗口之输入框和文本框的实现

    2023-02-17 06:11:33
  • CSS控制Table表格文字样式

    2008-06-11 18:53:00
  • 详解Go 依赖管理 go mod tidy

    2024-05-02 16:25:17
  • asp之家 网络编程 m.aspxhome.com