<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          超全!Tkinter 使用教程!4000字!

          共 5297字,需瀏覽 11分鐘

           ·

          2022-05-12 22:56

          人生苦短,快學(xué)Python!
          本期案例是帶著大家制作一個屬于自己的GUI圖形化界面—>用于設(shè)計簽名的哦(效果如下圖),是不是感覺很好玩,是不是很想學(xué)習(xí)呢?限于篇幅,今天我們首先詳細講述一下Tkinter的使用方法。本來不準(zhǔn)備詳細講述這個基礎(chǔ)知識,但是我怕那些想學(xué)習(xí)的同學(xué),學(xué)起來不過癮,還是補充了這一章。

          tkinter的簡單應(yīng)用

          Tkinter是Python的標(biāo)準(zhǔn)GUI庫。Python使用Tkinter可以快速地創(chuàng)建GUI應(yīng)用程序。當(dāng)然常用的GUI庫還有PyQt5,我們只需要知道這兩個常用的即可,如果你真的想學(xué)習(xí)的話。由于Tkinter屬于Python標(biāo)準(zhǔn)庫,就不需要使用pip安裝,直接導(dǎo)入使用即可。
          ① 顯示窗口
          • root.mainloop()顯示窗口;
          • 窗口默認會顯示在電腦屏幕的左上角,非常小(后面需要改進);
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?顯示窗口
          root.mainloop()
          """
          注意到:該窗口默認的顯示位置在哪里,觀察我下面的截圖。
          窗口默認顯示在整個電腦屏幕的左上角,并且窗口大小特別小。
          """
          結(jié)果如下:
          注意:上面2行代碼,首先實例化一個窗口對象,然后我們展示了這個窗口,讓其真正顯示出來。接下來我們的操作,就是針對這個窗口的一系列優(yōu)化操作,請注意:這個優(yōu)化操作使用的代碼,都是放在這2句代碼中間。
          ② 設(shè)置窗口大小
          • root.geometry("600x400")調(diào)整窗口的大小;
          • 該方法中傳入的是"寬x高",但是需要注意這個乘號是小寫的英文字母x,而不是這個*表示的乘號;
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450")

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          ③ 調(diào)整窗口位置(使用的是同一個方法)
          • root.geometry("600x400+374+182")調(diào)整窗口的大小+位置;
          • 374,182表示的是窗口頂點,距離電腦左上角的坐標(biāo)。這個數(shù)字怎么得到的呢?直接借助微信截圖就可以顯示了。
          操作代碼如下:
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")


          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          ④ 設(shè)置窗口的標(biāo)題
          • root.title()設(shè)置窗口的標(biāo)題;
          • 默認的窗口標(biāo)題是tk;
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          ⑤ 添加標(biāo)簽控件,并定位
          • Label(root,text="簽名")添加標(biāo)簽控件
          • 第一個參數(shù)傳入的就是實例化的那個root窗口對象;第二個參數(shù)傳入的要顯示的那個標(biāo)簽文本;
          • 僅僅添加標(biāo)簽控件后,還不行,必須要指定一個位置后,該標(biāo)簽控件才會真正展示出來,即最后需要調(diào)用grid()方法后,才會顯示標(biāo)簽控件;
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root)
          #?定位
          label.grid()

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          當(dāng)然你也可以想到,這個方法肯定還可以修改字體樣式、字體大小、字體顏色呀?具體怎么操作呢?我們接著往下面看。
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root,text="簽名",font=("宋體",25),fg="red")
          """
          text參數(shù)用于指定顯示的文本;
          font參數(shù)用于指定字體大小和字體樣式;
          fg參數(shù)用于指定字體顏色;
          """

          #?定位
          label.grid()

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          ⑥ 添加輸入框,并定位
          • Entry(root,font=("宋體",25),fg="red")添加輸入框
          • 第一個參數(shù)傳入的就是實例化的那個root窗口對象;第二個參數(shù)可寫可不寫,指的是我們輸入的字體的字體樣式和字體大小;第三個參數(shù)同樣可寫可不寫,表示的是我們輸入的字體的顏色。
          • 同樣,僅僅使用上述代碼并不會顯示輸入框,只有調(diào)用grid()方法,定位后,才會真正顯示這個輸入框;
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root,text="簽名",font=("宋體",25),fg="red")
          #?定位
          label.grid()

          #?添加輸入框
          entry?=?Entry(root,font=("宋體",25),fg="red")
          entry.grid()

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          注意:很明顯這樣的擺放方式,并不是我們想要的。我們需要調(diào)整一下,下面我們專門花一個小節(jié)時間,去講述怎么調(diào)整這個擺放位置。
          ⑦ 調(diào)整控件的擺放位置
          首先我們需要搞明白,顯示窗口究竟采用的是什么樣子的布局方式呢?其實是網(wǎng)格式的布局方式。那么什么又是網(wǎng)格式的布局方式呢?excel表格你知道吧,一個個的格子就是網(wǎng)格式的布局方式。
          好了!知道了上述原理后,我們現(xiàn)在來真正的調(diào)整這個控件擺放位置啦。
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root,text="簽名:",font=("宋體",25),fg="red")
          #?定位
          label.grid()
          """
          label.grid()等價于label.grid(row=0,column=0)
          """

          #?添加輸入框
          entry?=?Entry(root,font=("宋體",25),fg="red")
          entry.grid(row=0,column=1)
          """
          row=0,column=1表示我們將輸入框控件,放在第1行第2列的位置;
          python語言中,這個下標(biāo)是從0開始的。
          """

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          ⑧ 添加點擊按鈕
          • Button(root,text="簽名設(shè)計",font=("宋體",25),fg="red")添加輸入框
          • 第一個參數(shù)傳入的就是實例化的那個root窗口對象;第二個參數(shù)展示的是我們這個點擊按鈕的標(biāo)簽;第三個參數(shù)可寫可不寫,指的是點擊按鈕字體的字體樣式和字體大小;第四個參數(shù)同樣可寫可不寫,表示的是點擊按鈕字體的顏色。
          • 同樣,僅僅使用上述代碼并不會顯示輸入框,只有調(diào)用grid()方法,定位后,才會真正顯示這個點擊按鈕;
          from?tkinter?import?*
          from?tkinter?import?messagebox

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root,text="簽名:",font=("宋體",25),fg="red")
          #?定位
          label.grid()

          #?添加輸入框
          entry?=?Entry(root,font=("宋體",25),fg="red")
          entry.grid(row=0,column=1)

          #?添加點擊按鈕
          button?=?Button(root,text="簽名設(shè)計",font=("宋體",25),fg="blue")
          button.grid(row=1,column=1)

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:
          至此界面已經(jīng)簡單搭建起來了,接下來要做的就是輸入一個名字,點擊簽名設(shè)計后,會顯示我的這個簽名,此時就需要借助爬蟲啦!明天我們將會發(fā)布該文的下篇哦,敬請期待。
          ⑨ 點擊按鈕自定義功能
          這里最后補充這個知識點,我們點擊按鈕后,總是希望能夠給我們返回點什么,所以呢,需要我們自定義函數(shù)
          from?tkinter?import?*
          from?tkinter?import?messagebox

          def?func():
          ????print("我是黃同學(xué)")

          #?創(chuàng)建窗口:實例化一個窗口對象。
          root?=?Tk()

          #?窗口大小
          root.geometry("600x450+374+182")

          #??窗口標(biāo)題
          root.title("我的個性簽名設(shè)計")

          #?添加標(biāo)簽控件
          label?=?Label(root,text="簽名:",font=("宋體",25),fg="red")
          #?定位
          label.grid()

          #?添加輸入框
          entry?=?Entry(root,font=("宋體",25),fg="red")
          entry.grid(row=0,column=1)

          #?添加點擊按鈕
          button?=?Button(root,text="簽名設(shè)計",font=("宋體",25),fg="blue",command=func)
          button.grid(row=1,column=1)
          """
          command=func表示調(diào)用最開始定義的func函數(shù)。
          func函數(shù)一定要在這句代碼之前,因為這里需要調(diào)用這個func函數(shù)。
          """

          #?顯示窗口
          root.mainloop()
          結(jié)果如下:

          這是我開發(fā)的機器人公眾號小號,目前增加了天氣查詢,955公司名單,關(guān)注時間查詢;后面還會增加圖片功能和每日送書抽獎送書活動,以及調(diào)戲功能,歡迎來體驗,捧場。




          推薦閱讀:

          入門:?最全的零基礎(chǔ)學(xué)Python的問題? |?零基礎(chǔ)學(xué)了8個月的Python??|?實戰(zhàn)項目?|學(xué)Python就是這條捷徑


          干貨:爬取豆瓣短評,電影《后來的我們》?|?38年NBA最佳球員分析?|? ?從萬眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個海量小姐姐素描圖?|碟中諜這么火,我用機器學(xué)習(xí)做個迷你推薦系統(tǒng)電影


          趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲!


          AI:?會做詩的機器人?|?給圖片上色?|?預(yù)測收入?|?碟中諜這么火,我用機器學(xué)習(xí)做個迷你推薦系統(tǒng)電影


          小工具:?Pdf轉(zhuǎn)Word,輕松搞定表格和水印!?|?一鍵把html網(wǎng)頁保存為pdf!|??再見PDF提取收費!?|?用90行代碼打造最強PDF轉(zhuǎn)換器,word、PPT、excel、markdown、html一鍵轉(zhuǎn)換?|?制作一款釘釘?shù)蛢r機票提示器!?|60行代碼做了一個語音壁紙切換器天天看小姐姐!



          年度爆款文案

          點閱讀原文,看B站我的視頻!

          瀏覽 30
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  粉嫩小泬BBBB毛茸茸 | 欧美操B视频在线观看 | 久久成人三级片 | 激情偷乱人成视频在线观看 | 免费观看91黄色大片 |