一、pack佈局舉例 #pack佈局案例 import tkinter baseFrame = tkinter.Tk() #以下代碼都是創建一個組件,然後佈局 btn1 = tkinter.Button(baseFrame,text="A") btn1.pack(side=tkinter.LEFT, ...
一、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
https://github.com/ruigege66/Python_learning/blob/master/D61_ThreeFrameOfTkinter.py
2.CSDN:https://blog.csdn.net/weixin_44630050(心悅君兮君不知-睿)
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料