Я пытаюсь установить значения по умолчанию для некоторых спинбоксов, которые я создаю итеративно.Я довольно широко искал эту тему и нашел два варианта.Одна опция использует d = default sb.delete (0, "end") с sb.insert (0, d), а другая использует StringVar (), чтобы установить значение по умолчанию с textvariable.Кажется, что ни один из этих параметров не работает, а параметр StringVar () связывает все значения, поэтому при изменении одного значения они меняются все.
def skills(self):
self.genGet = {}
i=0
for key in Skills.genList:
self.var1 = tk.IntVar()
ttk.Label(self.frame, text=key).grid(column=0, row=i, sticky='W')
sbGen = tk.Spinbox(self.frame, from_=0, to=5, width=3)
sbGen.grid(column=1, row=i, sticky='W', pady=5, padx=5)
self.genGet[key] = (sbGen, self.var1)
i+=1
Это мой код, который работает нормально и создает ожидаемый результат, за исключением значения по умолчанию.
edit - Skills () - это класс, который содержит только несколько слов.