tkinter 中的“weight”有哪些功能?


为了构建应用程序中微件的布局,我们通常会使用 tkinter 网格系统。网格系统包含微件对齐其中的行和列。如果我们要配置任何微件,则可以使用网格行和列属性。

考虑一下,如果一个微件对齐的方式是留有额外的空间,那么我们就可以添加weight属性,它可以让列扩展。非零weight可以让列宽在屏幕尺寸中有额外的空间剩余时增长。然而,如果weight是零,那么列宽就不能增长。我们可以通过给weight属性指定某个值来理解 weight属性,结合示例进行理解。

示例

#Import tkinter library
from tkinter import *
#Create an instance of tkinter frame
win= Tk()
#Set the Geometry
win.geometry("750x250")
#Create two frames
frame1=Frame(win,background="black", width=10, height=100)
frame2=Frame(win,background="blue", width=10, height=100)
frame1.grid(row=0, column=0, sticky="nsew")
frame2.grid(row=0, column=1, sticky="nsew")
win.grid_columnconfigure(0, weight=0)
win.grid_columnconfigure(1, weight=1)
win.mainloop()

输出

执行上述代码将显示一个包含两个不同颜色的框架的窗口。weight=0禁用列宽相对于其框架尺寸的增长。然而,weight=1允许列宽增长,前提是框架中有空间。

更新于:2021 年 4 月 16 日

2K+ 阅读次数

开启你的职业生涯

通过完成课程获得认证

开始
广告