教你用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
  • 阅读 ( 2206 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论