python - 更改键盘语言

时间:2017-05-18 16:03:10

标签: python

我正在尝试更改python(windows)中的键盘语言。我到处寻找一种方法,最常见的答案是

import win32api
win32api.LoadKeyboardLayout('00000409',1) # to switch to english
win32api.LoadKeyboardLayout('00000401',1) # to switch to arabic

但这段代码唯一能做的就是在我的电脑上添加另一种语言到当前的语言列表 - 它不会改变语言的键盘(当我在运行脚本后尝试输入内容时)一直用同一种语言打字)。 顺便说一句,我正在使用Windows

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

שלוםנגה。

我设法通过键盘事件和快捷键分配来做到这一点。

  1. 转到Windows 7>控制面板>“文本服务和输入语言”(或右键单击langauge-bar>设置)
  2. 为单向语言分配键。例如“致英语”和“致希伯来语”。我选择了Alt-Shift-7和Alt-Shift-8,因为它们很少在其他地方使用。
  3. 在需要时从您的应用中发送相应语言的按键组合。

注意:

如果“您的应用程序”是一个外部实用程序(我用Python编写了我的应用程序),则它一定不能调用窗口,否则/ your-app /会占据焦点,并且会改变语言。在python中,我通过使用无GUI的pyw脚本文件名解决了该问题。 (或使用pythonw.exe调用脚本)

本文介绍了如何在python中发送键盘事件:

https://python-decompiler.com/article/2012-11/how-to-generate-keyboard-events-in-python