Python 如何在Tkinter中堆叠多个帧
对于我的项目,我需要使用Tkinter创建GUI。我想把它分成4个不同的帧,每个帧有不同的背景颜色。但是,执行此操作时,仅显示第一帧的背景色。我在下面附上了我的代码以及我得到的输出截图Python 如何在Tkinter中堆叠多个帧,python,python-2.7,user-interface,tkinter,frame,Python,Python 2.7,User Interface,Tkinter,Frame,对于我的项目,我需要使用Tkinter创建GUI。我想把它分成4个不同的帧,每个帧有不同的背景颜色。但是,执行此操作时,仅显示第一帧的背景色。我在下面附上了我的代码以及我得到的输出截图 我预计会有4个不同的帧,所有帧都以不同的背景色堆叠在一起,但只有第一个帧具有背景色。有人能给我解释一下为什么会这样以及我应该如何着手解决这个问题吗?谢谢你的相框在那里。底部三个框架中的内容较少,并且您没有给它们任何填充。框架会缩小以适应需要,因此当您只有一个项目时,将看不到框架 如果您执行以下两种操作之一,则可
我预计会有4个不同的帧,所有帧都以不同的背景色堆叠在一起,但只有第一个帧具有背景色。有人能给我解释一下为什么会这样以及我应该如何着手解决这个问题吗?谢谢你的相框在那里。底部三个框架中的内容较少,并且您没有给它们任何填充。框架会缩小以适应需要,因此当您只有一个项目时,将看不到框架 如果您执行以下两种操作之一,则可以很容易地看到帧: 首先,可以请求帧沿x方向填充其父窗口。当您执行此操作时,您将看到:
fileFrame.pack(fill="x")
attributeFrame.pack(fill="x")
constraintFrame.pack(fill="x")
preferenceFrame.pack(fill="x")
其次,除此之外,还可以在底部框架中的标签周围添加填充。这将使框架颜色显示
label_Attribute_header.pack(padx=20, pady=20)
...
label_Constraint_header.pack(padx=20, pady=20)
...
label_Preference_header.pack(padx=20, pady=20)
非常感谢。这是有道理的
label_Attribute_header.pack(padx=20, pady=20)
...
label_Constraint_header.pack(padx=20, pady=20)
...
label_Preference_header.pack(padx=20, pady=20)