2015-08-07 4 views
0

Возможно ли получить python для чтения ключа (например, Enter или Escape или клавиши со стрелкой), нажатого пользователем, и для записи кода ключа этого ключа в переменной?Получить ключевой код нажатого ключа из Python

Я посмотрел на это Python key binding/capture, но это отображает только символ, который вы нажимаете в оболочке. Я хочу записать это значение в переменную, не нужно ее печатать (а не python '\ n' для Enter, но реальный keycode (например, 13, я думаю, это в Windows) для клавиши Enter).

+0

использовать функцию ord(), она получает код ключа python в количестве. –

+0

@MosheRabaev Это не работает на Mac, хотя для меня ... это говорит, что я не имею правильную кодировку или что-то в этом роде. Кроме того, как я могу использовать unicode int в ord()? –

+0

@MosheRabaev. Причина, по которой я прошу об использовании юникода, заключается в том, что вы не можете проверить ключ типа «Enter» с помощью ord() .... можете ли вы? –

ответ

0

Это работает для меня. @MosheRabaev был прав, и это всего лишь версия кода. Думаю, вам просто нужно найти символы для всех специальных клавиш (например, «\ r» для Enter). Нет подсказки, что символы для клавиш со стрелками, хотя ...

import wx 
user_input = str(raw_input()) 

user_input += '\r' #If they press the Enter Key 
print user_input 

if ord(user_input) == wx.WXK_RETURN: 
     print "hey" 
print "what" 
Смежные вопросы