main.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:PyF9 作者: Saren-Arterius 项目源码 文件源码
def window_listen():
        global hook_id
        # Adapted from http://stackoverflow.com/a/16430918
        event_types = {win32con.WM_KEYDOWN: 'key down', 0x104: 'key down'}

        def low_level_handler(nCode, wParam, lParam):
            if wParam == win32con.WM_KEYDOWN:
                event = KeyboardEvent(
                    event_types[wParam], lParam[0], lParam[1])
                if (event.key_code == 122 or event.key_code == 145 or not w.is_hiding) and event.key_code in key_map:
                    idx = key_map[event.key_code]
                    event = event._replace(ScanCode=idx)
                    w.keyboard_callback(event)
                    return True
            return windll.user32.CallNextHookEx(hook_id, nCode, wParam, lParam)

        CMPFUNC = CFUNCTYPE(c_int, c_int, c_int, POINTER(c_void_p))
        pointer = CMPFUNC(low_level_handler)
        handle = win32api.GetModuleHandle(None)
        hook_id = windll.user32.SetWindowsHookExA(
            win32con.WH_KEYBOARD_LL, pointer, handle, 0)
        root.mainloop()
        atexit.register(windll.user32.UnhookWindowsHookEx, hook_id)
        type_char_queue.put(None)
        t.join()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号