Python Tkinter Window 和小部件尺寸测量
Python Tkinter Window and Widget Size Measurements
有谁知道 tkinter 对象的测量单位是什么?
例如:
ws='400' #i am assuming these are in pixels
hs='400'
root=tk.Tk()
root.geometry(ws+'x'+hs)
...
self.w1=tk.Label(self.parent,width=int(int(ws)*5/8) #The width here probably isn't in pixels
self.w2=tk.Button(self.parent,width=int(int(ws)*3/8)
如果小部件 Label 和 Button 的宽度也以像素为单位进行测量,那么无论其宽度如何,这都应该很好地适合它们 window。但事实并非如此。相反,我进行了实验,发现将一个小部件的宽度除以 10,另一个小部件的宽度除以 25 就可以了。
那么这些中的任何一个是用什么单位测量的?
这取决于小部件,还取决于小部件的配置方式。对于 Label
和 Button
小部件,width
和 height
指的是一些平均大小的字符(在内部,我相信它使用字符零的宽度和高度)。如果在标签或按钮中添加图像,则宽度指的是像素数。
避免硬编码像素值通常会获得最佳效果。 Tkinter 非常擅长计算小部件的适当大小,然后将它们放入 window。
有谁知道 tkinter 对象的测量单位是什么?
例如:
ws='400' #i am assuming these are in pixels
hs='400'
root=tk.Tk()
root.geometry(ws+'x'+hs)
...
self.w1=tk.Label(self.parent,width=int(int(ws)*5/8) #The width here probably isn't in pixels
self.w2=tk.Button(self.parent,width=int(int(ws)*3/8)
如果小部件 Label 和 Button 的宽度也以像素为单位进行测量,那么无论其宽度如何,这都应该很好地适合它们 window。但事实并非如此。相反,我进行了实验,发现将一个小部件的宽度除以 10,另一个小部件的宽度除以 25 就可以了。 那么这些中的任何一个是用什么单位测量的?
这取决于小部件,还取决于小部件的配置方式。对于 Label
和 Button
小部件,width
和 height
指的是一些平均大小的字符(在内部,我相信它使用字符零的宽度和高度)。如果在标签或按钮中添加图像,则宽度指的是像素数。
避免硬编码像素值通常会获得最佳效果。 Tkinter 非常擅长计算小部件的适当大小,然后将它们放入 window。