# Virtual Key Constants VK_SPACE = 0x20 VK_RETURN = 0x0D VK_TAB = 0x09 VK_ESCAPE = 0x1B VK_BACK = 0x08 VK_INSERT = 0x2D VK_DELETE = 0x2E VK_HOME = 0x24 VK_END = 0x23 VK_PRIOR = 0x21 # Page Up VK_NEXT = 0x22 # Page Down VK_LEFT = 0x25 VK_RIGHT = 0x27 VK_UP = 0x26 VK_DOWN = 0x28 VK_F1 = 0x70 VK_F2 = 0x71 VK_F3 = 0x72 VK_F4 = 0x73 VK_F5 = 0x74 VK_F6 = 0x75 VK_F7 = 0x76 VK_F8 = 0x77 VK_F9 = 0x78 VK_F10 = 0x79 VK_F11 = 0x7A VK_F12 = 0x7B VK_SCROLL = 0x91 # Windows Message Constants WM_KEYDOWN = 0x0100 WM_KEYUP = 0x0101 WM_CHAR = 0x0102 # SendInput Constants INPUT_KEYBOARD = 1 KEYEVENTF_KEYUP = 0x0002 KEYEVENTF_UNICODE = 0x0004 # Mouse Event Constants MOUSEEVENTF_MOVE = 0x0001 MOUSEEVENTF_LEFTDOWN = 0x0002 MOUSEEVENTF_LEFTUP = 0x0004 MOUSEEVENTF_RIGHTDOWN = 0x0008 MOUSEEVENTF_RIGHTUP = 0x0010 MOUSEEVENTF_MIDDLEDOWN = 0x0020 MOUSEEVENTF_MIDDLEUP = 0x0040 MOUSEEVENTF_ABSOLUTE = 0x8000 # Input Types INPUT_MOUSE = 0 INPUT_KEYBOARD = 1 # Key combinations for UI KEY_COMBINATIONS = [ ("F1", VK_F1), ("F2", VK_F2), ("F3", VK_F3), ("F4", VK_F4), ("F5", VK_F5), ("F6", VK_F6), ("F7", VK_F7), ("F8", VK_F8), ("F9", VK_F9), ("F10", VK_F10), ("F11", VK_F11), ("F12", VK_F12), ("A", ord('A')), ("B", ord('B')), ("C", ord('C')), ("D", ord('D')), ("E", ord('E')), ("F", ord('F')), ("G", ord('G')), ("H", ord('H')), ("I", ord('I')), ("J", ord('J')), ("K", ord('K')), ("L", ord('L')), ("M", ord('M')), ("N", ord('N')), ("O", ord('O')), ("P", ord('P')), ("Q", ord('Q')), ("R", ord('R')), ("S", ord('S')), ("T", ord('T')), ("U", ord('U')), ("V", ord('V')), ("W", ord('W')), ("X", ord('X')), ("Y", ord('Y')), ("Z", ord('Z')), ("0", ord('0')), ("1", ord('1')), ("2", ord('2')), ("3", ord('3')), ("4", ord('4')), ("5", ord('5')), ("6", ord('6')), ("7", ord('7')), ("8", ord('8')), ("9", ord('9')), ("Space", VK_SPACE), ("Enter", VK_RETURN), ("Tab", VK_TAB), ("Esc", VK_ESCAPE), ("Backspace", VK_BACK), ("Insert", VK_INSERT), ("Delete", VK_DELETE), ("Home", VK_HOME), ("End", VK_END), ("Page Up", VK_PRIOR), ("Page Down", VK_NEXT), ("Left Arrow", VK_LEFT), ("Right Arrow", VK_RIGHT), ("Up Arrow", VK_UP), ("Down Arrow", VK_DOWN), ("Scroll", VK_SCROLL) ]