@akdes

Python теряется эвент нажатия клавиши, как только нажата другая, как избежать?

Привет всем.

пишу маленький скрипт. Должен ловить клавишу пробел, и не терять её если бьют по клаве.
def get_space_state():
    hllDll = ctypes.WinDLL ("User32.dll")
    VK_SPACE = 0x20
    return hllDll.GetKeyState(VK_SPACE)

while (True):
        print get_space_state()


держу клавишу пробел, пишет -127/-128, в принципе устраиват.
Но как только я начинаю тыкать другие клавиши, не отпуская пробел, эвент теряется, и статус пробела выдает 0.

Есть идеи, как пофиксить? Нужно как в играх, стрелка вперёд: газ, но рулить одновременно всё равно можешь, без потери хука на газ

Заранее благодарен
  • Вопрос задан
  • 317 просмотров
Решения вопроса 1
@nirvimel
Можно использовать GetAsyncKeyState, например.
О причинах подобного поведения и о различиях между GetAsyncKeyState и GetKeyState подробнее тут.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы