python tkinter組件擺放方式詳解
1.最小界面組成
# 導(dǎo)入tkinter模塊 import tkinter # 創(chuàng)建主窗口對(duì)象 root = tkinter.Tk() # 設(shè)置窗口大小(最小值:像素) root.minsize(300,300) # 創(chuàng)建一個(gè)按鈕組件 btn = tkinter.Button(root,text = '屠龍寶刀,點(diǎn)擊送') btn.pack() # 加入消息循環(huán) root.mainloop()
設(shè)置初始化界面大小
# 設(shè)置初始化界面大小 root.geometry('300x400')
2.組件的擺放方式:
1.pack()方式 ->方向/方位擺放方法
2.grid()方式 ->網(wǎng)格擺放方法
3.place()方式 ->定位擺放方法
3.pack布局介紹
pack()方式:
side 設(shè)置組件相對(duì)于父組件的擺放位置
# 導(dǎo)入tkinter模塊 import tkinter # 創(chuàng)建主窗口對(duì)象 root = tkinter.Tk() # 設(shè)置窗口大小(最小值:像素) root.minsize(500,500) # 創(chuàng)建一個(gè)按鈕組件 btn0 = tkinter.Button(root,text = '按鈕1') # 默認(rèn)上邊或 side = 'top' btn0.pack() btn1 = tkinter.Button(root,text = '按鈕1') # 下面 btn1.pack(side = 'bottom') btn2 = tkinter.Button(root,text = '按鈕2') # 左邊 btn2.pack(side = 'left') btn3 = tkinter.Button(root,text = '按鈕2') # 右邊 btn3.pack(side = 'right') # 加入消息循環(huán) root.mainloop()
ipadx,ipady 設(shè)置組件的內(nèi)部間距
btn0 = tkinter.Button(root,text = '按鈕1') # 設(shè)置按鈕中文字到邊緣的間距 btn0.pack(ipadx = 20,ipady = 20)
padx,pady 設(shè)置多個(gè)組件外部間距
btn0 = tkinter.Button(root,text = '按鈕1') # padx設(shè)置組件外部左右間距,pady設(shè)置組件外部上下間距 btn0.pack(padx = 20,pady = 20)
fill 設(shè)置按鈕站一行或者一列
btn1 = tkinter.Button(root,text = '屠龍寶刀點(diǎn)擊就送!')# 該組件站水平方向的最大位置btn.pack(fill = 'x')btn2 = tkinter.Button(root,text = '屠龍寶刀點(diǎn)擊就送!')# 該組件站垂直方向的最大位置,但必須是side = 'right'或'left'才會(huì)生效btn2.pack(fill = 'y',side = 'right')
expand 設(shè)置side是否失效
btn1 = tkinter.Button(root,text = '屠龍寶刀點(diǎn)擊就送!') # yes時(shí)side失效,按鈕位于窗口中間,按鈕占用所有水平和垂直的空間,此時(shí)fill = both 按鈕站全部空間 btn1.pack(expand = 'yes',fill = 'both')
注意:僅僅使用pack無(wú)法實(shí)現(xiàn)表格方式,必須借助Franme組件才可以實(shí)現(xiàn),非常復(fù)雜。
grid()方式:
row 設(shè)置行數(shù) 默認(rèn)為0
column 設(shè)置列數(shù) 默認(rèn)為0
btn1 = tkinter.Button(root,text = '按鈕1') btn1.grid() btn2 = tkinter.Button(root,text = '按鈕2') btn2.grid(row = 1,column = 1)# 設(shè)置按鈕位置 btn3 = tkinter.Button(root,text = '按鈕3') btn3.grid(row = 0,column = 1)
rowspan 設(shè)置跨行數(shù)量
cloumnspan 設(shè)置跨列數(shù)量
ipadx,ipady 設(shè)置組件內(nèi)部間距
btn1 = tkinter.Button(root,text = '按鈕1') btn1.grid() btn2 = tkinter.Button(root,text = '按鈕2') btn2.grid(row = 1,column = 0)# 設(shè)置按鈕位置 btn2 = tkinter.Button(root,text = '按鈕2') btn2.grid(row = 0,column = 2,rowspan = 2,ipady = 15) btn2 = tkinter.Button(root,text = '按鈕2') btn2.grid(row = 2,column = 0,columnspan = 3,ipadx = 20)
place()方式:
絕對(duì)定位布局:
x 設(shè)置距離左上角的水平長(zhǎng)度 單位都是像素
y 設(shè)置距離左上角的垂直高度 單位都是像素
width 設(shè)置組件所占據(jù)的寬度 單位都是像素
height 設(shè)置組件所占據(jù)的高度 單位都是像素
btn = tkinter.Button(root,text = '按鈕') # 位置距離左邊100像素,距離上邊20像素 btn.place(x = 100,y = 20) btn1 = tkinter.Button(root,text = '按鈕1') # 設(shè)置按鈕的寬度和高度 btn1.place(x = 100,y = 100,width = 100,height = 100)
相對(duì)定位布局:
relx 設(shè)置距離左上角的水平長(zhǎng)度 取值(0-1)
rely 設(shè)置距離左上角的垂直高度 取值(0-1)
relwidth 設(shè)置組件所占據(jù)的寬度 取值(0-1)
relheight 設(shè)置組件所占據(jù)的高度 取值(0-1)
以上屬性設(shè)置都是相對(duì)于界面寬度或者高度的百分比,可以更具界面的大小的改變而改變~!
?。?!禁止同時(shí)使用兩種擺放方式
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python-地圖可視化組件folium的操作
- Python QT組件庫(kù)qtwidgets的使用
- wxPython窗體拆分布局基礎(chǔ)組件
- wxPython實(shí)現(xiàn)文本框基礎(chǔ)組件
- python tkinter組件使用詳解
- 對(duì)Python中TKinter模塊中的Label組件實(shí)例詳解
- Python wxPython庫(kù)Core組件BoxSizer用法示例
- Python:Scrapy框架中Item Pipeline組件使用詳解
- Python調(diào)用C# Com dll組件實(shí)戰(zhàn)教程
- Python MySQL數(shù)據(jù)庫(kù)連接池組件pymysqlpool詳解
- 使用Python的Django框架中的壓縮組件Django Compressor
- 零基礎(chǔ)寫(xiě)python爬蟲(chóng)之使用urllib2組件抓取網(wǎng)頁(yè)內(nèi)容
- python drf各類(lèi)組件的用法和作用
相關(guān)文章
selenium 多窗口切換的實(shí)現(xiàn)(windows)
這篇文章主要介紹了selenium 多窗口切換的實(shí)現(xiàn)(windows),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01Python 實(shí)現(xiàn)一行輸入多個(gè)數(shù)字(用空格隔開(kāi))
這篇文章主要介紹了Python 實(shí)現(xiàn)一行輸入多個(gè)數(shù)字,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04python如何將兩個(gè)數(shù)據(jù)表中的對(duì)應(yīng)數(shù)據(jù)相加
這篇文章主要介紹了python如何將兩個(gè)數(shù)據(jù)表中的對(duì)應(yīng)數(shù)據(jù)相加問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08Python 調(diào)用 zabbix api的方法示例
這篇文章主要介紹了Python 調(diào)用 zabbix api的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01Python 確定多項(xiàng)式擬合/回歸的階數(shù)實(shí)例
今天小編就為大家分享一篇Python 確定多項(xiàng)式擬合/回歸的階數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12Python實(shí)現(xiàn)生成日?qǐng)?bào)的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)生成日?qǐng)?bào)的功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06Pycharm遠(yuǎn)程連接服務(wù)器并運(yùn)行與調(diào)試
本篇文章介紹一下 Pycharm 如何配置遠(yuǎn)程連接信息,使其能夠在本地使用服務(wù)器上的GPU等硬件資源,并在本地完成代碼的運(yùn)行與調(diào)試,感興趣的可以了解一下2021-08-08Python語(yǔ)言實(shí)現(xiàn)SIFT算法
SIFT,即尺度不變特征變換,是用于圖像處理領(lǐng)域的一種描述,本文重點(diǎn)給大家介紹Python語(yǔ)言實(shí)現(xiàn)SIFT算法,感興趣的朋友一起看看吧2021-11-11