亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python GUI編程學習筆記之tkinter界面布局顯示詳解

瀏覽:19日期:2022-07-31 17:11:18

本文實例講述了Python GUI編程學習筆記之tkinter界面布局顯示。分享給大家供大家參考,具體如下:

相關內容: pack 介紹 常用參數 使用情況 常用函數 grid 介紹 常用參數 使用情況 常用函數 place 介紹 常用參數 使用情況 常用函數

首發時間:2018-03-04 14:20

pack: 介紹: pack幾何管理器按行或列打包小部件。 可以使用填充fill,展開expand和靠邊side等選項來控制此幾何體管理器。 pack的排放控件的形式就像將一個個控件按大小從上到下放過去Python GUI編程學習筆記之tkinter界面布局顯示詳解 在窗口不設定大小的而使用pack進行布局的情況下,窗口默認大小為剛好包裹所有控件的大小 默認情況下添加的控件是居中且占據整行的Python GUI編程學習筆記之tkinter界面布局顯示詳解 常用參數: fill:填充分配給控件的空間,fill:X為填充X軸方向,Y為Y軸方向,BOTH為X+YPython GUI編程學習筆記之tkinter界面布局顯示詳解 expand:先按普通標準來規定控件大小,如果后面窗口還剩下空間,那么會分給那些expand=True的控件,如圖中是兩個不同大小的按鈕,其中2expand=TruePython GUI編程學習筆記之tkinter界面布局顯示詳解 ,當使用expand=True時,side將不會生效! side:使控件靠窗口的指定方向并排,side可取值LEFT,RIGHT,TOP,BOTTOM.Python GUI編程學習筆記之tkinter界面布局顯示詳解 anchor:對齊方式,可取值“n”, “s”, “w”, “e”, “nw”, “sw”, “se”, “ne”, “center”(默認為” center”)Python GUI編程學習筆記之tkinter界面布局顯示詳解 ipadx, ipady:內邊距 padx,pady:外邊距 適用情況:與gird相比,pack有一定的局限性,但在一些但很常見的情況下使用起來要容易得多: 將一個小部件放入一個框架(或任何其他容器小部件)中,并讓它填充整個框架 將多個小部件放在一起 并排放置一些小部件 補充: 常用函數: pack_propagate(flag):由窗口調用來配置pack控件時窗口的大小,當flag=0時,那么窗口大小將不再僅僅包裹住所有控件,這時候窗口的高度和寬度設置才可以生效pack_forget():移除控件,但并沒有進行摧毀,可以再次使用pack或其他方式來顯示pack_info():返回pack提供的選項所對應得值。pack_slaves():以列表方式返回本組件的所有子組件對象。

from tkinter import *root=Tk()# for i in range(10): ##side # btn = Button(text=i) # btn.pack(side=LEFT) # btn.pack(side=RIGHT) # btn.pack(side=(TOP,LEFT)) ####fill # btn.pack(fill=X) # btn.pack(side=LEFT,fill=Y) # btn.pack(fill=BOTH)##expand# btn1=Button(text=1,bg=’green’)# btn2=Button(text=2,bg=’yellow’)# btn1.pack(fill=X)# btn2.pack(expand=True)#anchor:# btn1=Button(text=1,bg=’green’)# btn2=Button(text=2,bg=’yellow’)# btn1.pack(fill=X)# btn2.pack(anchor=E)#pack_propagete# btn1=Button(text=1,bg=’green’)# btn2=Button(text=2,bg=’yellow’)# root.pack_propagate(0)# btn1.pack()# btn2.pack()#pack_forget:# import time,threading# label=Label(text='警告!')# label.pack()# def run():# start_time=time.time()# while True:# if time.time()-start_time>3:# label.pack_forget()# break# t=threading.Thread(target=run)# t.setDaemon(True)# t.start()root.mainloop()grid: 介紹:grid是格子的意思,grid可以將控件區塊式擺放.Python GUI編程學習筆記之tkinter界面布局顯示詳解 常用參數: row: 行號,區分不同控件是否處于同一行 column: 列號,區分不同控件是否處于同一列 sticky: 決定控件的貼靠方向,該選項從集合N,S,E,W [東南西北的意思],中取一個或多個值。比如要將標簽與左邊框對齊,可以使用W(西)Python GUI編程學習筆記之tkinter界面布局顯示詳解Python GUI編程學習筆記之tkinter界面布局顯示詳解 rowspan:行跨度,決定某個控件占的行數 ,默認一行 columnspan:列跨度,決定某個控件占的列數,默認一列 ipadx, ipady:內邊距 padx,pady:外邊距 適用情況: 設計對話框的時候特別方便Python GUI編程學習筆記之tkinter界面布局顯示詳解 區塊化擺放的時候 補充: 常用函數: grid_forget :移除控件,但并沒有進行摧毀,可以再次使用grid或其他方式來顯示 [grid_remove有同樣作用]

grid_propagete

:由窗口調用來配置pack控件時窗口的大小,當flag=0時,那么窗口大小將不再僅僅包裹住所有控件,這時候窗口的高度和寬度設置才可以生效

grid_slaves():以列表方式返回本組件的所有子組件對象。

from tkinter import *root=Tk()root.title('我的窗口')label_user=Label(text=’用戶名:’,bg=’green’)label_pwd=Label(text=’密碼:’,bg=’green’)user=Entry()pwd=Entry()# row,column,stickylabel_user.grid(row=0,column=0,sticky=W) #一個有sticky,一個沒有sticky,以作區分label_pwd.grid(row=1,column=0)# rowspan,columnspanuser.grid(row=0,column=1)pwd.grid(row=1,column=1)btn=Button(text='提交')btn.grid(row=0,column=3,rowspan=2,columnspan=2,padx=5, pady=5)# 下面主要是將第一列拉大來顯示上面sticky的效果v=IntVar()check=Checkbutton(text='下次自動登錄',variable=v,)check.grid(row=2,column=0,sticky=W)# _forget:import time,threadinglabel=Label(text='歡迎登錄!',bg=’blue’)label.grid()def run(): start_time=time.time() while True: if time.time()-start_time>3: label.grid_forget() breakt=threading.Thread(target=run)t.setDaemon(True)t.start()root.mainloop()place: 介紹:可以使用絕對的位置或相對位置來擺放控件。 Python GUI編程學習筆記之tkinter界面布局顯示詳解 Python GUI編程學習筆記之tkinter界面布局顯示詳解 常用參數: x:控件在窗口中的x坐標 y:控件在窗口中的y坐標Python GUI編程學習筆記之tkinter界面布局顯示詳解 relx,rely:與主窗口的相對位置,比如Python GUI編程學習筆記之tkinter界面布局顯示詳解 relwidth,relheight:相對大小,比如height=0.5,width=0.5時控件占據窗口的四分之一大小 適用情況: 自定義顯示方式 將按鈕定位在對話框中 補充: 常用函數: place_forget():移除控件,但并沒有進行摧毀,可以再次使用place或其他方式來顯示place_slaves():以列表方式返回本組件的所有子組件對象。[slaves()具有同樣功能]place_info():返回place提供的選項所對應得值。

from tkinter import *root=Tk()root.geometry(’100x100’)label=Label(text='用戶名:',bg=’green’)entry=Entry()label.pack(fill=X)#x,y# entry.place(x=0,y=0)#relx,rely# entry.place(relx=0.3, rely=0.3)# entry.place(relx=0.5, rely=0.5)#relheight,relwidth# entry.place(relx=0.5, rely=0.5,relheight=0.5,relwidth=0.5)#_forget:import time,threadinglabel2=Label(text='警告!',bg=’blue’)label2.place(relx=0.2,rely=0.2)def run(): start_time=time.time() while True: if time.time()-start_time>3: label2.place_forget() breakt=threading.Thread(target=run)t.setDaemon(True)t.start()root.mainloop()

想要了解更多,可以參考tkinter的官方文檔:http://effbot.org/tkinterbook/

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python Socket編程技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产码一区二区三区 | 波多野吉衣一区二区三区四区 | 欧美一级暴毛片 | 麻豆视频入口 | 日韩精品中文乱码在线观看 | 国产精品久久久久久久久久久久久久 | 国产一二三区在线 | 免费观看a级毛片在线播放 免费观看a级片 | 免费国产在线观看不卡 | 中文字幕在线观看第一页 | 视频一区视频二区在线观看 | 国内国内在线精品视频 | 亚洲国产精品线观看不卡 | 九九在线免费观看视频 | 天天色综合天天 | 欧美一级特黄aaaaaa在线看首页 | 欧洲免费无线码一二区 | 黄色三级小视频 | 一级日韩片 | 57pao一国产成永久免费 | 未满十八18周岁禁止免费国产 | 亚洲国产精品久久久久婷婷老年 | 澳门毛片精品一区二区三区 | 黑人猛男大战俄罗斯白妞 | 在线高清免费爱做网 | 福利视频网页 | 美日韩在线 | 香蕉tv亚洲专区在线观看 | 久久国产乱子免费精品 | 澳门麻豆传媒精东影业 | 国产一区二区免费播放 | 久久不卡免费视频 | 午夜毛片视频高清不卡免费 | 亚洲天天在线日亚洲洲精 | 国产无卡一级毛片aaa | 成人18免费网站在线观看 | 精品视频一区二区三区在线观看 | 综合色中色 | 亚洲国产一区二区三区 | 久久国产精品久久久久久久久久 | 国产在线视频色综合 |