在 Tkinter 框架中对齐不同的标签
Align different labels in a Tkinter frame
我有 x 个标签,这些标签是使用
创建的
rand = random.randint(1,100000)
local()[f'self.m{rand}'] = Label(self.frame, text='test')
local()[f'self.m{rand}'].pack()
而且我有一个框架,我想按照这个方案在另一个框架旁边设置一个标签
Label 1 Label 2
Label 3 Label 4
Label 5 Label 6
Label **y** Label **x**
有人对我该如何继续有任何想法吗?
使用 grid()
而不是 pack()
来创建列和行。
如果您使用 pack()
然后使用 pack()
创建 Frame
然后在 Frame
中您可以使用 grid()
.
import tkinter as tk
root = tk.Tk()
frame = tk.Frame(root)
frame.pack()
labels = {}
for row_number in range(5):
for col_number in range(2):
value = 1 + row_number*2 + col_number
labels[value] = tk.Label(frame, text='Label ' + str(value))
labels[value].grid(row=row_number, column=col_number)
root.mainloop()
我有 x 个标签,这些标签是使用
创建的rand = random.randint(1,100000)
local()[f'self.m{rand}'] = Label(self.frame, text='test')
local()[f'self.m{rand}'].pack()
而且我有一个框架,我想按照这个方案在另一个框架旁边设置一个标签
Label 1 Label 2
Label 3 Label 4
Label 5 Label 6
Label **y** Label **x**
有人对我该如何继续有任何想法吗?
使用 grid()
而不是 pack()
来创建列和行。
如果您使用 pack()
然后使用 pack()
创建 Frame
然后在 Frame
中您可以使用 grid()
.
import tkinter as tk
root = tk.Tk()
frame = tk.Frame(root)
frame.pack()
labels = {}
for row_number in range(5):
for col_number in range(2):
value = 1 + row_number*2 + col_number
labels[value] = tk.Label(frame, text='Label ' + str(value))
labels[value].grid(row=row_number, column=col_number)
root.mainloop()