我对特金特和Python很陌生。我的代码就是这样的:
import tkinter as tk
main = tk.Tk()
# Window size
main.geometry("400x700")
main.resizable(0, 0)
# Window position
w = main.winfo_reqwidth()
h = main.winfo_reqheight()
ws = main.winfo_screenwidth()
hs = main.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
main.geometry('+%d+%d' % (x, y))
fr1 = tk.Frame(main, borderwidth=2, relief="solid", bg = "#271ee3", width=400, height=50)
fr2 = tk.Frame(main, borderwidth=2, relief="solid", bg = "#0d9467", width=200, height=650)
fr3 = tk.Frame(main, borderwidth=2, relief="solid", bg = "#3e1854", width=200, height=650)
fr1.pack()
fr2.pack(side="left")
fr3.pack(side="right")
main.mainloop()
用这个代码我得到 following window
到目前为止还不错。添加以下代码时出现问题:
# Label
l = tk.Label(fr2, text="Heyho")
l.grid(row=0, column=0)
现在看来so
我的目标是得到一个窗口,在第一帧(fr1)中有一个按钮,它的几何结构与fr1相同。在fr2和fr3中,我希望彼此之间有几个标签。我在fr2和fr3中的标签应该有列0,但有升序行(0,1,2,3…)。我怎么做
它会根据标签的大小自动调整框架的大小,这样您就不会看到隐藏在标签后面的绿色背景,而可以看到主窗口的灰色背景
如果在主窗口中添加其他较长的标签和红色背景,您可以更好地看到它
如果你加上
然后框架将保持其大小
但是您仍然有网格的问题,它没有使用
Frame
的完整大小,并且您不能将它居中或向右对齐如果你加上
如果没有其他列,列0将尝试使用全尺寸,并且标签将在单元格中居中
如果你使用
在
grid()
中,对于标签,它们将填充单元格相关问题 更多 >
编程相关推荐