1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

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

        共 4564字,需瀏覽 10分鐘

         ·

        2022-04-14 04:37


        ↑?關(guān)注 + 星標(biāo)?,每天學(xué)Python新技能

        后臺(tái)回復(fù)【大禮包】送你Python自學(xué)大禮包

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

        tkinter的簡(jiǎn)單應(yīng)用

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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


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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

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

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?添加標(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")添加輸入框
        • 第一個(gè)參數(shù)傳入的就是實(shí)例化的那個(gè)root窗口對(duì)象;第二個(gè)參數(shù)可寫(xiě)可不寫(xiě),指的是我們輸入的字體的字體樣式和字體大?。坏谌齻€(gè)參數(shù)同樣可寫(xiě)可不寫(xiě),表示的是我們輸入的字體的顏色。
        • 同樣,僅僅使用上述代碼并不會(huì)顯示輸入框,只有調(diào)用grid()方法,定位后,才會(huì)真正顯示這個(gè)輸入框;
        from?tkinter?import?*
        from?tkinter?import?messagebox

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?添加標(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)整一下,下面我們專(zhuān)門(mén)花一個(gè)小節(jié)時(shí)間,去講述怎么調(diào)整這個(gè)擺放位置。
        ⑦ 調(diào)整控件的擺放位置
        首先我們需要搞明白,顯示窗口究竟采用的是什么樣子的布局方式呢?其實(shí)是網(wǎng)格式的布局方式。那么什么又是網(wǎng)格式的布局方式呢?excel表格你知道吧,一個(gè)個(gè)的格子就是網(wǎng)格式的布局方式。
        好了!知道了上述原理后,我們現(xiàn)在來(lái)真正的調(diào)整這個(gè)控件擺放位置啦。
        from?tkinter?import?*
        from?tkinter?import?messagebox

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?添加標(biāo)簽控件
        label?=?Label(root,text="簽名:",font=("宋體",25),fg="red")
        #?定位
        label.grid()
        """
        label.grid()等價(jià)于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語(yǔ)言中,這個(gè)下標(biāo)是從0開(kāi)始的。
        """

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?添加標(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)

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

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

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

        #?創(chuàng)建窗口:實(shí)例化一個(gè)窗口對(duì)象。
        root?=?Tk()

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

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

        #?添加標(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)

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

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




        1. xdm,外包能干嗎?

        2. 終于,Python 也可以寫(xiě)前端了

        您看此文用???分??秒,轉(zhuǎn)發(fā)只需1
        瀏覽 65
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            最新在线中文字幕 | 一边摸一边舔 | 女美草逼 | 久色91 | 正在播放迷姦新婚夜 | 日日摸日日摸日日摸 | 北条麻妃九九九精品视频免费观看 | 国产主播在线观看 | 女性隐私黄www | 国产精品久久久久久久久久久久午 |