• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    教你用Python獲得Tkinter(TK)窗口的大小(寬高)

    Tk怎么查看窗口巨細?Tkinter獲得窗口寬高?

    Python Tk獲得窗口巨細,看這篇就夠了。

    下面小編就手把手教小伙伴怎么獲得Tk窗口的寬高。

    東西/原料

    • Python

    方式/步調

    1. 1

      良多小伙伴可能會問,為什么要獲得tk窗口的巨細,巨細幾多可以本身設置。為什么還要經由過程法式來獲得呢?

      來看看小編寫的這個,動態獲得tk窗口寬高像素巨細。

      如圖

    2. 2

      上圖就是經由過程tk窗口事務來進步履態的打印窗口的寬高。

      那么,怎么獲得窗口的巨細寬高呢?

      我們先建立一個tk窗口

      #-*- coding:utf-8 -*-

      import tkinter

      #小編這里是python3,利用python2的小伙伴把tkinter換當作Tkinter即可,不然報錯哦

      win = tkinter.Tk()

      win.mainloop()

      如許我們就建立了一個tk窗口,盡管這個窗口什么都沒有。

    3. 3

      我們要用到的方式是tk對象供給的winfo_width和winfo_height,從字面上我們都可以理解:winfo_width獲得窗口的寬度,winfo_height獲得窗口的高度

      以上兩個方式都是無參方式,經由過程返回值我們可以獲得窗口的寬高。

      OK,我們插入代碼

      print("當前窗口的寬度為",win.winfo_width())

      print("當前窗口的高度為",win.winfo_height())

    4. 4

      這里良多小伙伴就會問了,為什么是1?窗口的寬高絕對不是1。

      沒錯,可是法式并沒有做錯,我們只是少了點什么?我們需要刷新窗口數據,若是小伙伴經常利用tk這個圖形庫,就會知道,我們利用winfo_width和winfo_height獲得的寬高其實是tk初始化時的一個值。

      此時我們挪用update方式,刷新win窗口。

      win.update()

      快看,是不是當作功獲得了窗口的寬高?

    5. 5

      我們可以自界說窗口巨細來看數據是否準確。

      例如小編這里設置窗口巨細 = 100 x 100,即寬100px高100px

      win.geometry("100x100")

      這里可能又有小伙伴會問了,為什么寬度又犯錯了?

      其實很簡單,因為tk幫我們建立了窗口裝飾器,裝飾器有以下幾個部門:圖標、題目、最年夜化、最小化和封閉按鈕

      這些裝飾器占有了16個px,其實是15個,還有1個px像素點是作為窗口和裝飾器之間的距離。

      如圖紅色標識表記標幟部門

      所有代碼為:

      #-*- coding:utf-8 -*-

      import tkinter

      win = tkinter.Tk()

      win.geometry("100x100")

      win.update()

      print("當前窗口的寬度為",win.winfo_width())

      print("當前窗口的高度為",win.winfo_height())

      win.mainloop()

    注重事項

    • 人生苦短,我用Python
    • 若有疑問,點擊左下角的投票或者有得給小編留言,小編看到會第一時候答復您,感謝
    • 若是喜好本經驗,請存眷我。可以把它分享給您的伴侶,請點個投票點個保藏。感謝,您的撐持是我最年夜的動力。
    • 發表于 2018-04-16 00:00
    • 閱讀 ( 5283 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆