使用Python更改键盘布局?

5

我正在开发一个大学系统(Windows XP),希望登录时将键盘设置为Dvorak布局。我目前有一个更改桌面图片的Python脚本。

我能否使用Python来更改键盘布局?还是有其他方法可以实现?


在https://dev59.com/XXVC5IYBdhLWcg3w1E_w中有一个答案,它并没有以编程方式切换到Dvorak布局,但确实重新映射了所有键 - 这可能是可以接受的,因为注册表设置将在注销时清除。 - Mark Rushakoff
但是你如何在Dvorak键盘布局下使用vim呢? :/ - Corey D
我曾经使用过Dvorak键盘和vim编辑器(在2001年)。这让我有些震惊。虽然我已经习惯了它,但我不一定推荐这样做。 - jcdyer
我在转换为 Dvorak 后很久才学会 vim,所以使用 Dvorak 的 vim 对我来说很好用。 - ℳ  .
3个回答

3
改变键盘布局:
import win32api
win32api.LoadKeyboardLayout('00000409',1) # to switch to english
win32api.LoadKeyboardLayout('00000401',1) # to switch to arabic

而对于Dvorak键盘布局:
win32api.LoadKeyboardLayout("00010409",1)

或者
win32api.LoadKeyboardLayout("00020409",1)

你有Dvorak键盘布局代码或者win32api文档链接吗? - ASGM
1
使用以下代码获取键盘布局代码:win32api.GetKeyboardLayout()。 - user2229472
谢谢,但我不想自己找,我想知道loadKeyboardLayout是否有Dvorak选项,这是OP正在寻找的。 - ASGM
我认为Dvorak键盘布局的代码是(“00010409”或“00020409”)。 - user2229472
我不知道 - 我之所以问是因为那是原帖所问的。谢谢您把它加入答案! - ASGM
这对我当前的布局实际上没有什么改变。相反,它只是在当前列表中添加了一个新的布局。 - Groosha

1

我会使用AutoHotKey来改变布局。你可以编写一个脚本重新映射键并将其编译为可执行文件。

例如

q::'
+q::"
w::,
+w::<
e::.
+e::>
r::p

等等。


1

请将以下与编程���关的内容从英语翻译成中文。仅返回翻译后的文本:请勿将评论发布为答案。 - SilentGhost

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接