LuDreamst 2022-08-21 09:55 采纳率: 0%
浏览 49

python如何识别微软拼音输入法的中英文状态?

问题遇到的现象和发生背景

想写个py程序,检测Windows系统的输入法类型,目前已可以识别纯英文输入法和拼音输入法。但拼音输入法的中英文shift切换无法识别,返回值统一为0x804。

问题相关代码,请勿粘贴截图
import ctypes
user32 = ctypes.WinDLL('user32', use_last_error=True)
curr_window = user32.GetForegroundWindow()
thread_id = user32.GetWindowThreadProcessId(curr_window, 0)
klid = user32.GetKeyboardLayout(thread_id)
lid = klid & (2 ** 16 - 1)
lid_hex = hex(lid)
print(lid_hex)
# 代码借鉴于https://blog.csdn.net/shjsfx/article/details/106185038
我想要达到的结果

希望能找到区分拼音输入法的中英文两种状态的方法

  • 写回答

1条回答 默认 最新

  • kakaccys 2022-08-21 10:07
    关注

    你可以监控使用shift键

    评论

报告相同问题?

问题事件

  • 创建了问题 8月21日

悬赏问题

  • ¥15 麒麟V10桌面版SP1如何配置bonding
  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错
  • ¥15 java python或者任何一种编程语言复刻一个网页
  • ¥20 如何通过代码传输视频到亚马逊平台
  • ¥15 php查询mysql数据库并显示至下拉列表中
  • ¥15 freertos下使用外部中断失效
  • ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
  • ¥15 devserver配置完 启动服务 无法访问static上的资源
  • ¥15 解决websocket跟c#客户端通信