Pyglet, как заставить КЛАВИШУ ВЫХОДА не закрыть окно?

Я пишу программу небольшой выборки, и я хотел бы переопределить behavioyr pyglet по умолчанию ESC, закрывающего приложение. У меня есть что-то вплоть до:

window = pyglet.window.Window()
@window.event
def on_key_press(symbol, modifiers):
    if symbol == pyglet.window.key.ESCAPE:
        pass

но это, кажется, не работает.

9
задан Bartosz Radaczyński 22 March 2010 в 20:42
поделиться

2 ответа

В группе Google для pyglet-users предлагается перегрузить window.Window.on_key_press(), хотя примеров кода нет.

1
ответ дан 4 December 2019 в 08:32
поделиться

Я знаю, что вопрос старый, но на всякий случай. Вы должны вернуть pyglet.event.EVENT_HANDLED, чтобы предотвратить поведение по умолчанию. Я не проверял, но теоретически это должно работать:

@window.event
def on_key_press(symbol, modifiers):
    if symbol == pyglet.window.key.ESCAPE:
        return pyglet.event.EVENT_HANDLED
19
ответ дан 4 December 2019 в 08:32
поделиться