Как вы говорите, модуль инспектора делает именно то, что вы ищете, поэтому вы не открываете код и не выясняете? В конце концов, это Python :).
Это файл spector.py.
Поиск ctrl
в качестве ярлыка, используемого инспектором, — это «ctrl+e», чтобы получить нас "nofollow">это.::
def keyboard_shortcut(self, win, scancode, *largs):
modifiers = largs[-1]
if scancode == 101 and modifiers == ['ctrl']:
self.activated = not self.activated
...
...
...
Кажется, что это слушает клавиатуру и проверяет, соответствует ли ввод «ctrl» и «e»
if scancode == 101 and modifiers == ['ctrl']:
Однако мы не знаем, как/откуда вызывается эта функция? Итак, давайте искать имя функции::
`keyboard_shortcut`
Получаем это.
win.bind(children=ctx.inspector.on_window_children,
on_keyboard=ctx.inspector.keyboard_shortcut)
win — это экземпляр окна, так как мы хотим глобально привязаться к сочетанию клавиш, мы привязываемся к событию on_keyboard
окна.
Что это за событие on_keyboard
окна? Давайте поищем window
в документации kivy.
Четвертая ссылка kivy.core. window.Keyboard (класс Python в Window) кажется интересным. По этой ссылке кажется, что у них даже есть пример использования Window.keyboard, а также объяснение события on_keyboard
здесь.
Следуя всем вышеперечисленным ресурсам, вы сможете глобально привязаться к ярлыку, чтобы реагировать на него.
Надеюсь, это поможет.
person
qua-non
schedule
28.03.2013