av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python Tkinter圖形工具使用方法及實(shí)例解析

瀏覽:112日期:2022-07-21 10:34:17

Tkinter 常用組件

按鈕

Button 按鈕組件 RadioButton 單選框組件 CheckButton 選擇按鈕組件 Listbox 列表框組件

文本輸組件

Entry 單行文本框組件 Text 多行文本框組件

標(biāo)簽組件

Label 標(biāo)簽組件,可以顯示圖片和文字 Message 標(biāo)簽組件, 可以根據(jù)內(nèi)容將文字換行

菜單

Menu 菜單組件 MenuButton 菜單按鈕組件,可以實(shí)用Menu代替

滾動(dòng)條

Scale 滑動(dòng)組件 Scrollbar 滾動(dòng)條組件

其他組件 Canvas 畫(huà)布組件

Frame 框架組件,將多個(gè)組件編組 Toplevel 創(chuàng)建子窗口容器組件

組件的大致實(shí)用步驟創(chuàng)建總面板創(chuàng)建面板上各種組件

1.指定組件的父組件,即依附關(guān)系

2.利用相應(yīng)的屬性對(duì)組件進(jìn)行設(shè)置

3.給組件安排布局最后啟動(dòng)總面板的消息循環(huán)組件布局

控制組件的擺放方式

三種布局:

pack: 按照方位布局 place: 按照坐標(biāo)布局 grid: 網(wǎng)格布局

pack布局

最簡(jiǎn)單,代碼量最少,挨個(gè)擺放,默認(rèn)從上到下,系統(tǒng)自動(dòng)設(shè)置 通用實(shí)用方式為:組件對(duì)象.pack(設(shè)置......) side:停靠方位,可選值為L(zhǎng)EFT,TOP,RIGHT,BOTTOM fill:填充方式,x,y,BOTH,NONE expande:YES/NO 擴(kuò)充 anchor:N,E,S,W,CENTER ipadx:x方向的內(nèi)邊距 ipady:y padx:x的外方向邊界 pady:y

grid布局

通用使用方式:組件對(duì)象.grid(設(shè)置......) 利用row,cblumn編號(hào),都是從0開(kāi)始 sticky:N,E,S,W表示上下左右,用來(lái)決定組件從哪個(gè)方向開(kāi)始 支持ipadx,padx等參數(shù),跟pack函數(shù)一樣 支持rowspan,columnspan,代表跨行,跨列數(shù)列

place布局:

明確方位的擺放 相對(duì)位置布局,隨意改變窗口大小會(huì)導(dǎo)致混亂 使用place函數(shù),分為絕對(duì)布局和相對(duì)布局,絕對(duì)布局使用X,Y參數(shù) 相對(duì)布局使用relx,rely,relheight,relwidth

案例1:創(chuàng)建一個(gè)自己定義的彈窗、并且里面有文字內(nèi)容

執(zhí)行完成就會(huì)彈出一個(gè)白色定義好的小方框,里面的內(nèi)容就是你定義的

import tkinterbase = tkinter.Tk()# 創(chuàng)建總面板# 負(fù)責(zé)標(biāo)題base.wm_title('Label Test') # 創(chuàng)建面板的標(biāo)題lb = tkinter.Label(base, text='Pyhton Label') # 創(chuàng)建一些內(nèi)容,把創(chuàng)建的內(nèi)容指定給我之前創(chuàng)建好的名為base的面板,Pyhton Label為面板的內(nèi)容# 給相應(yīng)組件指定布局 lb.pack() # 給相應(yīng)組件指定布局base.mainloop() # 啟動(dòng)總面板的消息循環(huán)(大致意思了解為啟動(dòng)這個(gè)面板)

Python Tkinter圖形工具使用方法及實(shí)例解析

案例2:Button案例,創(chuàng)建一個(gè)彈窗,里面生成一個(gè)按鈕,當(dāng)按鈕被按下去的時(shí)候,執(zhí)行我定義的函數(shù)

import tkinterdef showlabel(): global baseFrame # 調(diào)用全局變量,baseFrame,也可以把baseFrame = tkinter.Tk() 放到函數(shù)上面 lb = tkinter.Label(baseFrame, text='我是函數(shù)里面的內(nèi)容') lb.pack()if __name__ == ’__main__’: baseFrame = tkinter.Tk () btn = tkinter.Button(baseFrame, text='點(diǎn)擊我、就會(huì)執(zhí)行函數(shù)', command=showlabel) # command為指定要執(zhí)行的函數(shù),不填默認(rèn)不執(zhí)行 btn.pack() baseFrame.mainloop()

執(zhí)行結(jié)果如下:

Python Tkinter圖形工具使用方法及實(shí)例解析

pack布局

最簡(jiǎn)單,代碼量最少,挨個(gè)擺放,默認(rèn)從上到下,系統(tǒng)自動(dòng)設(shè)置 通用實(shí)用方式為:組件對(duì)象.pack(設(shè)置......) side:停靠方位,可選值為L(zhǎng)EFT,TOP,RIGHT,BOTTOM fill:填充方式,x,y,BOTH,NONE expande:YES/NO 擴(kuò)充 anchor:N,E,S,W,CENTER ipadx:x方向的內(nèi)邊距 ipady:y padx:x的外方向邊界 pady:y

案例3:pack 布局案例

# pack 布局案例import tkinterdef button1(): # 函數(shù)內(nèi)所有代碼都是創(chuàng)建一個(gè)組件,然后布局 global baseFreame btn1 = tkinter.Button(baseFreame, text=’A’) btn1.pack(side=tkinter.LEFT, expand=tkinter.YES, fill=tkinter.Y) btn2 = tkinter.Button(baseFreame, text=’B’) btn2.pack(side=tkinter.TOP, expand=tkinter.YES, fill=tkinter.BOTH) btn3 = tkinter.Button(baseFreame, text=’C’) btn3.pack(side=tkinter.RIGHT, expand=tkinter.YES, fill=tkinter.NONE, anchor=tkinter.NE) btn4 = tkinter.Button(baseFreame, text=’D’) btn4.pack(side=tkinter.LEFT, expand=tkinter.NO, fill=tkinter.Y) btn5 = tkinter.Button(baseFreame, text=’E’) btn5.pack(side=tkinter.TOP, expand=tkinter.NO, fill=tkinter.BOTH) btn6 = tkinter.Button(baseFreame, text=’F’) btn6.pack(side=tkinter.BOTTOM, expand=tkinter.YES) btn7 = tkinter.Button(baseFreame, text=’G’) btn7.pack(anchor=tkinter.SE)if __name__ == ’__main__’: baseFreame = tkinter.Tk() button1 () baseFreame.mainloop()

執(zhí)行結(jié)果如下:

Python Tkinter圖形工具使用方法及實(shí)例解析

grid布局

通用使用方式:組件對(duì)象.grid(設(shè)置......) 利用row,cblumn編號(hào),都是從0開(kāi)始 sticky:N,E,S,W表示上下左右,用來(lái)決定組件從哪個(gè)方向開(kāi)始 支持ipadx,padx等參數(shù),跟pack函數(shù)一樣 支持rowspan,columnspan,代表跨行,跨列數(shù)列

案例3:grid布局案例

import tkinterdef button1(): # 函數(shù)內(nèi)所有代碼都是創(chuàng)建一個(gè)組件,然后布局 global baseFreame btn1 = tkinter.Label(baseFreame, text=’賬戶:’) btn1.grid(row=0, sticky=tkinter.W) en = tkinter.Entry(baseFreame) en.grid(row=0, column=1, sticky=tkinter.E) btn2 = tkinter.Label(baseFreame, text=’密碼:’) btn2.grid(row=1, sticky=tkinter.W) en2 = tkinter.Entry(baseFreame) en2.grid(row=1, column=1, sticky=tkinter.E) btn2 = tkinter.Button(baseFreame, text=’登陸’) btn2.grid(row=2, column=1, sticky=tkinter.W)if __name__ == ’__main__’: baseFreame = tkinter.Tk() button1() baseFreame.mainloop()

執(zhí)行結(jié)果如下:

Python Tkinter圖形工具使用方法及實(shí)例解析

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 一级视频黄色 | 日韩中文字幕一区二区 | 欧美久久一级特黄毛片 | 中文字幕乱码亚洲精品一区 | 成人伊人| 久久久性色精品国产免费观看 | 成人三级电影 | 成人国内精品久久久久一区 | av网站在线免费观看 | 精品国产乱码一区二区三区a | 亚洲欧美日韩精品久久亚洲区 | 亚洲欧美日韩在线不卡 | 欧美视频第二页 | 依人成人 | 午夜丰满少妇一级毛片 | 高清黄色毛片 | 91久久久久 | 亚洲人一区 | 亚洲一区二区三区免费观看 | 毛片网站在线观看 | av毛片在线免费观看 | 玖玖操 | 亚洲第一视频网 | 久产久精国产品 | 污片在线免费观看 | 91综合网 | 中文字幕 国产精品 | 日本免费一区二区三区视频 | 国产九九九九 | 一级黄色生活视频 | av一区二区在线观看 | 亚洲区中文字幕 | 伊人久久国产 | 国外成人在线视频网站 | 超碰97人人人人人蜜桃 | 国产 日韩 欧美 制服 另类 | 视频在线观看一区二区 | 久草网视频| 欧美性猛片aaaaaaa做受 | 涩涩操| 在线欧美一区 |