如何使用tkinter将标签放入框架中?

问题描述

我正在尝试创建两个框架并将第二个标签放入第二个标签。这是我的代码

import tkinter as tk

root = tk.Tk()
root.geometry("500x500")

f1 = tk.Frame(root,bg = "red",width = 400,height = 250)
f2 = tk.Frame(root,bg = "blue",height = 150)

f1.pack()
f2.pack()

text1 = tk.Label(f2,text = "lala")
text1.pack(side='left')

text2 = tk.Label(f2,text = "lalala")
text2.pack(side= "right")

root.mainloop()

为什么f2的背景色和侧面设置都不起作用?

运行代码时,它看起来像这样:

enter image description here

我希望它看起来像这样:

enter image description here

谢谢。

解决方法

以下是添加了f2.pack_propagate(0)的示例,并添加了定位关键字以更紧密地匹配上面的示例输出(感谢acw1668

import tkinter as tk

root = tk.Tk()
root.geometry("500x500")

f1 = tk.Frame(root,bg = "red",width = 400,height = 250)
f2 = tk.Frame(root,bg = "blue",height = 150)

f1.pack()
f2.pack()
f2.pack_propagate(0)

text1 = tk.Label(f2,bg='blue',text = "lala")
text1.pack(side='left',anchor='n')

text2 = tk.Label(f2,text = "lalala")
text2.pack(side= "right",anchor='n')

root.mainloop()