Python tkinter三種布局實例詳解
這篇文章主要介紹了Python tkinter三種布局實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
一、pack布局舉例
# pack布局案例 import tkinter baseFrame = tkinter.Tk() # 以下代碼都是創(chuàng)建一個組件, 然后布局 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(設(shè)置.......)
2.利用row,column編號,都是從0開始
3.sticky:N\E\S\W表示上下左右,用來決定組件從哪個方向開始
4.支持ipadx,padx等參數(shù),跟pack函數(shù)含義一樣
5.支持rowspan,columnspan,表示跨行,跨列數(shù)量
# pack布局案例 import tkinter # baseFrame = tkinter.Tk() ## 以下代碼都是創(chuàng)建一個組件, 然后布局 # 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函數(shù),分為絕對布局和相對布局,絕對布局使用x,y參數(shù)
4.相對布局使用relx.rely,relheight,relwidth.
四、源碼
D61_ThreeFrameOfTkinter.py
https://github.com/ruigege66/Python_learning/blob/master/D61_ThreeFrameOfTkinter.py
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python 實現(xiàn)國產(chǎn)SM3加密算法的示例代碼
這篇文章主要介紹了Python 實現(xiàn)國產(chǎn)SM3加密算法的示例代碼,幫助大家更好的理解和學習密碼學,感興趣的朋友可以了解下2020-09-09對比Python中__getattr__和 __getattribute__獲取屬性的用法
這篇文章主要介紹了對比Python中__getattr__和 __getattribute__獲取屬性的用法,注意二者間的區(qū)別,__getattr__只作用于不存在的屬性,需要的朋友可以參考下2016-06-06關(guān)于Pytorch MaxUnpool2d中size操作方式
今天小編就為大家分享一篇關(guān)于Pytorch MaxUnpool2d中size操作方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01