Python tkinter三種佈局例項詳解
阿新 • • 發佈:2020-01-09
這篇文章主要介紹了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,fill = tkinter.BOTH) btn2 = tkinter.Button(baseFrame,text = "C") btn2.pack(side = tkinter.RIGHT,fill = tkinter.NONE) btn2 = tkinter.Button(baseFrame,text = "D") btn2.pack(side = tkinter.LEFT,expand = tkinter.NO,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,fill = tkinter.Y) # # btn2 = tkinter.Button(baseFrame,text = "B") # btn2.pack(side = tkinter.TOP,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,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,sticky = tkinter.E) button = tkinter.Button(baseFrame2,text = "登入").grid(row = 2,sticky = tkinter.E) baseFrame2.mainloop()
三、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
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。