Python 3.x 如何使顶部框架覆盖整个水平空间?

Python 3.x 如何使顶部框架覆盖整个水平空间?,python-3.x,tkinter,Python 3.x,Tkinter,如何使顶部框架覆盖整个水平空间 只是一小段代码 虽然我使用了合适的尺寸,但它并没有覆盖整个区域 不要试图设置帧的高度或宽度,因为帧的设计目的是根据您装入的内容的大小进行调整,因此这些大小几乎会立即被覆盖。相反,使用sticky参数告诉框架使用其容器的大小。在你的情况下,坚持东西两面: ABC1 = Frame(ABC,bd=14,padx=10,relief=RIDGE,bg="black") ABC1.grid(row=0,column=0,columnspan=4,sticky=E+W) A

如何使顶部框架覆盖整个水平空间 只是一小段代码 虽然我使用了合适的尺寸,但它并没有覆盖整个区域


不要试图设置帧的高度或宽度,因为帧的设计目的是根据您装入的内容的大小进行调整,因此这些大小几乎会立即被覆盖。相反,使用sticky参数告诉框架使用其容器的大小。在你的情况下,坚持东西两面:

ABC1 = Frame(ABC,bd=14,padx=10,relief=RIDGE,bg="black")
ABC1.grid(row=0,column=0,columnspan=4,sticky=E+W)
ABC1.columnconfigure(1, weight=1) # set column 1 (the middle one) to consume extra space.

感谢它帮助框架覆盖了剩余的空间,但是文本仍然在一侧,没有在框架中展开@Novel@JustinPaul要扩展框架的元素,需要使用columnconfigure设置哪些列可以占用额外的空间。我将添加一个示例。我建议对框架使用pack。
ABC1 = Frame(ABC,bd=14,padx=10,relief=RIDGE,bg="black")
ABC1.grid(row=0,column=0,columnspan=4,sticky=E+W)
ABC1.columnconfigure(1, weight=1) # set column 1 (the middle one) to consume extra space.