我正在尝试编写一个函数来接收 ASCII 键并将其转换为虚拟键代码。
前任:
from msvcrt import getch
key= ord(getch()) #getting the ASCII character for a key that was pressed
def(key):
#converting the key to virtual key code
Run Code Online (Sandbox Code Playgroud)
例如:a的ascii码是41。我希望函数接收它并返回0x41——这是该键的虚拟键码。
预先感谢您的任何帮助!
您可以从 Windows API 使用 VkKeyScan:
from ctypes import windll
def char2key(c):
# https://msdn.microsoft.com/en-us/library/windows/desktop/ms646329(v=vs.85).aspx
result = windll.User32.VkKeyScanW(ord(unicode(c)))
shift_state = (result & 0xFF00) >> 8
vk_key = result & 0xFF
return vk_key
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8118 次 |
| 最近记录: |