美文网首页
python设置键盘布局

python设置键盘布局

作者: BI罗 | 来源:发表于2021-03-01 11:20 被阅读0次
    import win32api,win32gui,win32con
    import os
    import time
    from enum import Enum
    
    class Lan(Enum):
        """
        语言代码值参考:https://msdn.microsoft.com/en-us/library/cc233982.aspx
        """
        EN = 0x4090409
        ZH = 0x8040804
    
    def change_lan(lan :Lan):
        """
        修改当前激活窗口输入法
        :param lan: 语言类型
        :return: True 修改成功,False 修改失败
        """
        # 获取系统输入法列表
        hwnd = win32gui.GetForegroundWindow()
        im_list = win32api.GetKeyboardLayoutList()
        im_list = list(map(hex, im_list))
    
        # 加载输入法
        if hex(lan.value) not in im_list:
            win32api.LoadKeyboardLayout('0000' + hex(lan.value)[-4:], 1)
    
        result = win32api.SendMessage(
            hwnd,
            win32con.WM_INPUTLANGCHANGEREQUEST,
            0,
            lan.value)
        if result == 0:
            print('设置%s键盘成功!' % lan.name)
        return result == 0
    
    if __name__ == '__main__':
        change_lan(Lan.ZH)
        # change_lan(Lan.EN)
    

    相关文章

      网友评论

          本文标题:python设置键盘布局

          本文链接:https://www.haomeiwen.com/subject/bwaofltx.html