Я пытаюсь открыть приложение kivy во второй раз после закрытия окна (потому что это приложение в трее).Однако я столкнулся с исключением при закрытии приложения с помощью клавиши Esc и последующем повторном запуске приложения.
Эта ошибка не возникает. , когда я закрываю окно, вместо этого щелкнув крестик на панели окна.
Вот пример кода, воспроизводящий проблему:
Код: Выделить всё
from time import sleep
from kivy.app import App
from kivy.core.window import Window
from kivy.uix.widget import Widget
class MyApp(App):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.my_window = Widget()
def build(self):
return self.my_window
def on_stop(self):
Window.hide()
if __name__ == '__main__':
Window.top = 30
app = MyApp()
app.run()
# Restart the App after one second
sleep(1)
Window.show()
app.run()
Код: Выделить всё
Connected to pydev debugger (build 223.8836.43)
[INFO ] WM_MotionEventProvider
[INFO ] WM_MotionEventProvider
[ERROR ] [Base ] No event listeners have been created
[ERROR ] [Base ] Application will leave
python-BaseException
(Это происходит в kivy2.3.0 на python3.11 и windows11)
Подробнее здесь: https://stackoverflow.com/questions/784 ... ng-esc-key