Tkinter размещение кнопок сеткой через цикл
Знакомлюсь с Python. Не могу разобраться как с помощью цикла разместить кнопки сеткой, чтоб кнопки не дублировались. Блок кода с созданием и размещением кнопок
for i in range(0, len(button_list)):
for j in range(0, 3):
b = tk.Button(frame_button, text=button_list.[i].get_name(), width="20", font=('Arial', 12),
command=lambda i=i: self.add_button_list_clicked(button_list[i].get_position()))
b.grid(row=i, column=j)
Полный блок кода:
frame_main = tk.Frame(self.main_window)
frame_main.place(x=550, y=30)
canvas = tk.Canvas(frame_main, width=590, height=465)
canvas.grid(row=0, column=0)
vsb = tk.Scrollbar(frame_main, orient="vertical", command=canvas.yview)
vsb.grid(row=0, column=1, sticky='ns')
canvas.configure(yscrollcommand=vsb.set)
frame_button = tk.Frame(canvas)
canvas.create_window((1, 0), window=frame_button, anchor='nw')
for i in range(0, len(self.__position_list.get_position_list())):
for j in range(0, 3):
b = tk.Button(frame_button, text=self.__position_list.get_position_list()[i].get_name(), width="20", font=('Arial', 12), command=lambda i=i: self.add_button_list_clicked(self.__position_list.get_position_list()[i].get_position()))
b.grid(row=i, column=j)