Я пытаюсь создать графический интерфейс с неопределенным количеством таблиц с циклом for. количество таблиц должно быть изменено с помощью функции func, запускаемой кнопкой. Вот мой код:Обновление диапазона для цикла с кнопкой
from tkinter import *
def change1():
print(days)
in1 = input('how many days?')
for a in range(0, len(days)):
days.remove(days[0])
for a in range(0, int(in1)):
in2 = input('type in another day: ')
days.append(in2)
krofl = (days[0], '-', days[len(days)-1])
firstlast.set(krofl)
Fenster = Tk()
Fenster.title("some title")
Fenster.minsize(width=800, height=900)
Fenster.resizable(width=FALSE, height=FALSE)
presetdays = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun']
days = []
for a in range(0, len(presetdays)):
days.append(presetdays[a])
firstlast = StringVar()
firstlast.set(str("preset value"))
lab1_1 = Label(Fenster, text='Zeitspanne:')
lab1_1.grid(row=0, column=0)
lab1_2 = Label(Fenster, textvariable = firstlast)
lab1_2.grid(row=0, column=1)
but1 = Button(Fenster, text='Change', command=change1)
but1.grid(row=0, column=2)
for a in range(0, len(days)):
karamel = Label(Fenster, text = days[a])
karamel.grid(row=a, column=6)
Fenster.mainloop()
Моя проблема заключается в том, что список ярлыках, лейблах будет пн, вт ..... даже после нажатия на кнопку & изменения списка дней. Я попытался следующие:
number_days = IntVar()
number_days.set(7)
и добавить это в четкости change1:
sth = int(len(days))
number_days.set(sth)
и изменения для цикла в конце концов это:
for a in range(0, number_days):
karamel = Label(Fenster, text = days[a])
karamel.grid(row=a, column=6)
но он возвращает этот error: ТипError: 'IntVar' объект не может быть интерпретирован как целое число
Есть ли способ получить эту работу, чтобы все обновления lables после def change1()?
вы имеете в виду изменения для цикла в конце концов: для в диапазоне (0, number_days.get():? ...... –
вы попробовать его – furas
да оно не возвращать но не обновлять lables ... –