Задать вопрос
Sadatake
@Sadatake

Как создавать фреймы в неопределённом кол-ве?

Доброго времени Хабр!
Прошу у вас помощи, так как у меня мозги не хватает. Изначально преследуется задача создать окно, в котором можно выбрать n-кол-во файлов с ПК, а именно создавать фрейм в котором будет label(выбранный файл) и кнопка выбора файла, при этом label необходимо изменить после нажатия кнопки.
Изначально неизвестно сколько будет файлов, по этому я не могу их заранее прописать в основном окне. Я попытался решить через генератор, но в таком случае я не понимаю как обрабатывать созданные фреймы.

from tkinter import *
from tkinter import ttk

def check():
    def frame(num):
        civ = num
        num = ttk.Frame(borderwidth=10, relief=SOLID, padding=[8,10])
        lab = ttk.Label(num, f"Текст №{civ}")
        return num
    for i in range(10):
        i = frame()
        i["lab"].pack()
        i.pack()
        yield 

root = Tk()
root.title("Papa ute")
root.geometry("250x250")

rbtn = ttk.Button(text="Создать фрейм", command=check)
rbtn.pack()


root.mainloop()
  • Вопрос задан
  • 57 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Простой вариант - складывай нужные объекты в список. Если что, можно сделать список кортежей.
Чуть более сложный вариант - опиши класс, описывающий пару кнопка-label, и реализующий логику выбора файла, и складывай в список экземпляры этого класса.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы