如何将两个标签放在一起?

时间:2019-01-27 04:25:09

标签: python tkinter

我正在做一个UI,并使用tkinter来建立它。如下图所示,我希望上面的两个标签均等。

Picture

这是我为创建此代码而编写的代码。

Player1 = "Terry"  
Player2 = "David"
player1 = tk.Label(top,
                   text=Player1,
                   font="Times 45",
                   fg="white",
                   bg="#0000FF")
player1.pack(side=TOP, padx=10,pady=10,  anchor=NW)
player2 = tk.Label(top,
                   text=Player2,
                   font="Times 45",
                   fg="white",
                   bg="#FF0000")
player2.pack(side=TOP, padx=10,pady=10,anchor=N)

我尝试使用锚点和侧面进行调整,但由于种种原因,我无法使其他标签向上。

2 个答案:

答案 0 :(得分:2)

gridpack的替代方法,在这种情况下可能会更容易。本质上,您的界面分为行和列的网格,对象的位置由其行和列的位置指定。您的代码可能如下所示:

player1.grid(row=0, column=0)
player2.grid(row=0, column=1)

如果您想坚持使用pack,只需将side指定为'left' / 'right'

player1.pack(side='left')
player2.pack(side='left`)

enter image description here

答案 1 :(得分:0)

如果期望输出如下,那么这是您的代码。 enter image description here

Player1 = "Terrry"  
Player2 = "David"
player1 = tk.Label(top,
                   text=Player1,
                   font="Times 45",
                   fg="white",
                   bg="#0000FF")
player1.pack(side=tk.LEFT, padx=10,pady=10, anchor=tk.NW)
player2 = tk.Label(top,
                   text=Player2,
                   font="Times 45",
                   fg="white",
                   bg="#FF0000")
player2.pack(side=tk.LEFT, padx=10,pady=10, anchor=tk.N)

您可以通过传递“ LEFT”来实现此目的,而不是将“ TOP”传递给“ side”属性。另外,您可以在'anchor'属性中使用'NW'或'N'。