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

Как совместить Tkinter и циклическое выполнение функции?

Пишу простенький Notifier. Раз в минуту проверяет количество файлов в папке. С помощью Tkinter делается кнопочка, которая открывает эту папку.
Какими средствами лучше изобразить цикличность выполнения функции проверки, чтобы не блокировало нажатие на кнопку.
  • Вопрос задан
  • 2946 просмотров
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • Хекслет
    Python-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
xSkyFoXx
@xSkyFoXx
Решения 2:

1) Делать проверку в subproccess, а не в основном потоке, и сделать callback, если файлик появился. Это общее решение.
2) Воспользоваться https://pypi.python.org/pypi/watchdog или в том же subproccess или в threading. При порождении нового процесса сложнее обмениваться сообщениями, надо делать какой-то общий спейс. В тредами - удобнее, но там не приходится говорить о "честных" тредах.
Ответ написан
Комментировать
@ssssergey Автор вопроса
Ну в общем я сделал так:
вставил root.after(5000,update_buttons) в саму функцию (update_buttons). То есть каждые 5 секунд она сама себя вызывает. Вроде бы все работает. Кнопка нажимается.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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