Python>标签不能显示给Fram

2024-05-21 08:24:35 发布

您现在位置:Python中文网/ 问答频道 /正文

标签不能显示在左框中。我对pythongui很陌生。我的代码是这样的:

from tkinter import *

root = Tk()

mainFrame = Frame(root, width=700, height=500)
mainFrame.pack()

leftFrame = Frame(mainFrame, bg="#c2c3c4")
leftFrame.place(relheight=1, relwidth=0.34, anchor=W)

label1 = Label(leftFrame, text="Label1")
label2 = Label(leftFrame, text="Label2")

label1.grid(columnspan=2, sticky=W, pady=(20, 0))
label2.grid(columnspan=3, sticky=W, pady=(5, 0))

root.mainloop()


Tags: textroot标签framelabelgridstickylabel2
1条回答
网友
1楼 · 发布于 2024-05-21 08:24:35

在这种情况下,您看不到标签,因为它们不在屏幕上。leftFrame的锚定为W,这意味着leftFrame的垂直中心位于0,0。换句话说,框架的一半在窗口的可见部分之上。你知道吗

证明这一点的一个快速解决方法是使用NW的锚点而不是W,这将导致帧的左上角位于其父帧的左上角。你知道吗

但是,我强烈建议您不要使用place。它有它的用途,但真的应该很少使用。最后你不得不自己做大量的工作,结果通常对字体、分辨率或窗口大小的变化不是很敏感。你知道吗

相关问题 更多 >