Python tkinter三种布局实例如何详细学习?
- 内容介绍
- 文章标签
- 相关推荐
本文共计884个文字,预计阅读时间需要4分钟。
本文主要介绍了Python的tkinter库中三种布局实例:pack布局。通过示例代码详细讲解了pack布局的使用方法,对学习者和工作者具有一定的参考价值,需要的伙伴可参考以下内容:
一、pack布局简介pack布局是一种简单的布局方式,它将控件按照从上到下、从左到右的顺序进行排列。控件可以水平或垂直排列,并且可以设置控件之间的间距。
二、pack布局示例以下是一个使用pack布局的简单示例:
pythonimport tkinter as tk
创建主窗口root=tk.Tk()root.title(Pack布局示例)
创建三个标签label1=tk.Label(root, text=标签1)label2=tk.Label(root, text=标签2)label3=tk.Label(root, text=标签3)
使用pack布局排列控件label1.pack()label2.pack()label3.pack()
启动主事件循环root.mainloop()
三、总结通过本文的介绍,读者可以了解到pack布局的基本使用方法。在实际开发中,可以根据需要灵活运用pack布局,以达到理想的界面效果。对于学习和工作者来说,掌握pack布局对提高工作效率具有一定的帮助。
这篇文章主要介绍了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()
二、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()
三、place布局
1.明确方位的摆放
2.相对位置布局,随意改变窗口大小会导致混乱。
3.使用place函数,分为绝对布局和相对布局,绝对布局使用x,y参数
4.相对布局使用relx.rely,relheight,relwidth.
四、源码
D61_ThreeFrameOfTkinter.py
github.com/ruigege66/Python_learning/blob/master/D61_ThreeFrameOfTkinter.py
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计884个文字,预计阅读时间需要4分钟。
本文主要介绍了Python的tkinter库中三种布局实例:pack布局。通过示例代码详细讲解了pack布局的使用方法,对学习者和工作者具有一定的参考价值,需要的伙伴可参考以下内容:
一、pack布局简介pack布局是一种简单的布局方式,它将控件按照从上到下、从左到右的顺序进行排列。控件可以水平或垂直排列,并且可以设置控件之间的间距。
二、pack布局示例以下是一个使用pack布局的简单示例:
pythonimport tkinter as tk
创建主窗口root=tk.Tk()root.title(Pack布局示例)
创建三个标签label1=tk.Label(root, text=标签1)label2=tk.Label(root, text=标签2)label3=tk.Label(root, text=标签3)
使用pack布局排列控件label1.pack()label2.pack()label3.pack()
启动主事件循环root.mainloop()
三、总结通过本文的介绍,读者可以了解到pack布局的基本使用方法。在实际开发中,可以根据需要灵活运用pack布局,以达到理想的界面效果。对于学习和工作者来说,掌握pack布局对提高工作效率具有一定的帮助。
这篇文章主要介绍了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()
二、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()
三、place布局
1.明确方位的摆放
2.相对位置布局,随意改变窗口大小会导致混乱。
3.使用place函数,分为绝对布局和相对布局,绝对布局使用x,y参数
4.相对布局使用relx.rely,relheight,relwidth.
四、源码
D61_ThreeFrameOfTkinter.py
github.com/ruigege66/Python_learning/blob/master/D61_ThreeFrameOfTkinter.py
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

