获取Tkinter窗口大小
我怎么才能获取一个Tkinter窗口的宽度和高度呢?
3 个回答
-1
虽然skiibloc的回答在技术上是对的,但其实有更好的方法。
width, height = get_window_size(root) #assuming your canvas or window manager is root.
这个方法是让tk程序动态地询问窗口的大小。
1
要创建一个精确的窗口大小,你可以简单地这样做:
使用 `window.geometry("400x400")` 作为例子。不过你要确保这个参数是用字符串的形式写的,不然就会出现问题,这是我自己的经验。
35
你可以使用 winfo_width
这个方法来获取控件的实际宽度。而 winfo_reqwidth
则是用来获取控件请求的大小,这两个可能会不一样。
需要注意的是,如果你在窗口还没有显示在屏幕上之前就调用这个方法,你可能得不到你想要的结果。因为 Tkinter 需要先把窗口画出来,才能知道它的大小。如果你想在程序开始之前获取窗口的大小,可以在获取大小之前先调用一下窗口的 update
方法,这样就能解决这个问题。