Window 以英寸或磅为单位的大小和位置
Window size and position in inch or points
我能够figure out如何以其他单位设置小部件位置和尺寸:
import tkinter as tk
root = tk.Tk()
root.geometry("200x100+400+200")
btn = tk.Button(text="Button")
btn.place(x='20p', y='20p', width='70p', height='20p')
root.mainloop()
...我想对 window 做同样的事情。但是,几何不允许 root.geometry("200px100p+400p+200p")
这样的单位。如何使用英寸或磅设置 window 大小?
我以前从未使用过它,但是有 winfo_fpixels(distance) 可以将 p
、i
、c
中的距离转换为像素数。
它显示了 points
(root
) 和 pixels
(other
)
之间的区别
import tkinter as tk
root = tk.Tk()
x = int(root.winfo_fpixels('200p'))
y = int(root.winfo_fpixels('100p'))
w = int(root.winfo_fpixels('400p'))
h = int(root.winfo_fpixels('200p'))
root.geometry(f"{x}x{y}+{w}+{h}")
root.title('root')
other = tk.Toplevel()
other.geometry(f"200x100+400+200")
other.title('other')
root.mainloop()
我能够figure out如何以其他单位设置小部件位置和尺寸:
import tkinter as tk
root = tk.Tk()
root.geometry("200x100+400+200")
btn = tk.Button(text="Button")
btn.place(x='20p', y='20p', width='70p', height='20p')
root.mainloop()
...我想对 window 做同样的事情。但是,几何不允许 root.geometry("200px100p+400p+200p")
这样的单位。如何使用英寸或磅设置 window 大小?
我以前从未使用过它,但是有 winfo_fpixels(distance) 可以将 p
、i
、c
中的距离转换为像素数。
它显示了 points
(root
) 和 pixels
(other
)
import tkinter as tk
root = tk.Tk()
x = int(root.winfo_fpixels('200p'))
y = int(root.winfo_fpixels('100p'))
w = int(root.winfo_fpixels('400p'))
h = int(root.winfo_fpixels('200p'))
root.geometry(f"{x}x{y}+{w}+{h}")
root.title('root')
other = tk.Toplevel()
other.geometry(f"200x100+400+200")
other.title('other')
root.mainloop()