Как остановить цикл kivy, если в файле так же имеется серверная часть(следующая после цикла)?
Я пишу программу для правильной работы которой, после взаимодействия с диалоговым окном kivy, оно должно закрываться, чтобы не перекрывать выполнение скрипта на окне cmd. Проблема заключается в том, что я нашёл только 2 варианта развития ситуации: либо диалоговое окно так и не закрывается; либо закрывается весь файл целиком, включая и серверную часть, так как kivy не умеет(насколько я знаю) завершать выполнение своего цикла, пока скрипты всё ещё работают на фоне. Есть ли какие нибудь компромиссы этой проблеме? Например:
- Свертывание или скрытие kivy окна, что при этом не закрывает его
- Выведение окна cmd поверх всех окон
Или что либо подобное.
Программа пишется для OC - Windows
Ответы (1 шт):
Я не знаю будет ли полезен этот ответ, но конкретно в моём случае - это помогло. Я добавил данные строки после основного класса kivy и теперь всё как надо:
win32console.FreeConsole()
win32console.AllocConsole()
Консоль выводится поверх диалогового окна, что вполне хорошо.
Интересно то, что, работает это только из за того, что первая функция работает некорректно - она пытается закрыть консоль, но по итогу диалоговое окно просто виснет(а не крашится весь файл, как должно быть). Конечно, если бы не этот баг, то окно cmd так и не смогло бы открыться.