@k0r0g

Как дождаться события от второй формы?

Здравствуйте.
Мне нужно получить от пользователя дату. Нужно это сделать посреди функции. К сожалению, такого диалога в QInputDialog нет.
Я создал вторую форму и решил, что вызову её.
в функции написал что-то такое
# вызывает форму
self.dialog.show()
# ждёт, пока в поле формы появятся данные, затем прерывает ожидание
while True:
      if len(self.dialog.result) != 0:
           break
      time.sleep(0.3)
# получаю введённые данные
data = self.dialog.result


Но, к сожалению, форма появляется вся белая, на ней ничего нет.
В чём тут проблема? Может, есть более умный способ дождаться ввода данных?
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
События графического интерфейса обрабатываются бесконечным циклом, который запускается, когда вы вызываете app.exec_() Его нельзя останавливать, иначе приложение зависнет, а бесконечный цикл это и делает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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