【发布时间】:2022-01-23 20:25:19
【问题描述】:
我有一个关于 python tkinter 的初学者问题:
我有一个这样的框架:
import tkinter
root = tkinter.Tk()
root.geometry('100x100')
frame = tkinter.Frame(root, width=100, height=80, bg='green')
frame.pack()
root.mainloop()
结果是一个窗口,大部分是绿色的。现在我想在那个绿色区域上放置一个标签。因此,我在 frame.pack() 和 root.mainloop() 之间添加了以下内容:
label = tkinter.Label(frame, text='TESTTEST')
label.pack()
这会导致一个窗口打印 TESTTEST。但没有什么是绿色的了。我的 Frame 去哪儿了?文字不够大,无法用自己的背景完全覆盖绿色区域。
我做错了什么?为什么它不能那样工作?
在 frame 和 label 之间放置另一个 Frame,如下所示:
frame2 = tkinter.Frame(frame, width=100, height=20)
frame2.pack()
导致标签上方的区域是无色的。但是,在我的标签的左侧和右侧,它是绿色的?! 上面和下面都不是绿色。就在我的标签的左右。
这是如何工作的?
【问题讨论】:
-
Rick,如果能解决您的问题,请记住接受您的问题的答案。这归功于花时间研究您的问题的人。谢谢