150_Kirill_150
@150_Kirill_150
FX, Python, C# (Unity), Coding, адепт Linux

Qt программа на Python зависает из-за time.sleep(), как исправить?

Всем привет, пишу клиента для Яндекс Музыки на Unix использую PyQt
Опыта большого с PyQt у меня нет, и опыта работы с потоками
Так вот, к чему вопрос, моя программа должна приостановится в определённый момент, для этого я использую time.sleep()

class ExampleApp(QtWidgets.QMainWindow, design.Ui_MainWindow):
        def __init__(self):
                # Это здесь нужно для доступа к переменным, методам
                # и т.д. в файле design.py
                super().__init__()
                self.setupUi(self)  # Это нужно для инициализации нашего дизайна
                print(1+1)
                time.sleep(40) # И тут зависает намертво Qt до 40 секунд

Я знаю где ошибка, я знаю что за ошибка, но из-за того что я имею мало опыта работы с PyQt я не знаю как её исправить
Помогите пж)
  • Вопрос задан
  • 184 просмотра
Решения вопроса 2
HemulGM
@HemulGM Куратор тега Python
Delphi Developer, сис. админ
Потому что ты сам поставил sleep. Любая программа с GUI работает на основном потоке, а ты его останавливаешь на 40 секунд. Из-за остановки не обрабатываются сообщения окон, а это и есть основа работы приложения с GUI.

P.S.
Не перестаю поражаться тому, как люди "пишут" программы не понимая что делают
Ответ написан
@negr_vitalya
Я скелет - негр виталя
Зачем это делать в конце? Если это необходимо,то можно эту функцию вынести в отдельный поток.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы