XP键盘和语言切换

XP键盘和语言切换

我的问题很简单,但显然没有解决办法,因为我花了两个小时寻找解决方案。我妻子有一台法国电脑,Windows XP 是法语的……因此默认语言和键盘是法语的。我是英国人,用盲打,所以不在乎键盘上写的是什么,我只想能够将语言和键盘更改为英国英语,并让它保持这种状态直到切换回来。Alt(左)+ Shift 可以更改语言,如语言工具栏上所示,但似乎你做任何事情的那一刻,它就会切换回法语。我不想使用不同的登录名,因为我经常帮我妻子使用电脑,但键盘语言不断切换让我抓狂。例如。关闭所有窗口,只显示桌面。使用 Alt + shift 选择英国英语。然后打开 InternetExplorer。猜猜它会变回法语。因此再次使用 Alt + shift 切换,因为应用程序显然依赖于应用程序。现在单击地址栏以键入 URL,然后它又变回法语了。即使您停留在 Internet Explorer 中并右键单击并在另一个选项卡中打开,它也会将语言更改回法语。

我看过很多关于这个问题的文章,但似乎没有人能给出答案,而且我并不是唯一遇到这个问题的人。是否有注册表设置,以便应用程序不会查看默认语言,而是采用当前设置的语言。有没有第三方解决方案可以解决这个问题?Windows Vista 或 Windows 7 是否也存在这个非常烦人的问题?

感谢所有花时间回复并拯救我理智的人

答案1

我经常在同一个帐户中使用两种不同的键盘语言,我所做的就是摆脱语言栏和 ALT-SHIFT 快捷键。相反,我使用 ALT-SHIFT-1 作为主要语言,使用 ALT-SHIFT-2 作为第二种语言(可以在控制面板区域和语言选项语言标签,细节...按钮,关键设置...在里面设置tab)。这样,在新窗口中开始输入内容之前按下正确的组合键就成了你的第二天性。

答案2

如果您使用更长的“更改语言”方法(通过区域选项),是否适用此行为?

第三方方法-应该不太难自动热键。您可以指定一个热键来告诉它复制您用来更改语言的任何键盘(或鼠标)方法。这不是解决方案,但它会使频繁切换变得更快。

答案3

问题是 IE 为每个页面使用不同的设置。在其他应用程序中,快捷键可以保持其正常工作。有两种解决方案:您可以使用 FireFox,它会存储整个应用程序的键盘设置,或者您可以使用Jiri 建议。这两种方法的问题在于它们不会影响当前打开的应用程序。

我建议两者同时进行。这样,当您打开新程序时,它将遵循当前的默认语言,而当您更改 Web 浏览器的语言时,所有页面都将更改其键盘布局。

并且,回答您的另一个问题:Vista 和 7 在切换语言时使用与 XP 相同的逻辑。

答案4

您可以通过键盘快捷键更改应用程序的当前语言 (ALT+SHIFT)或者你可以改变默认语言用于控制面板小程序中的应用程序。

您可以使用此 VB 脚本(另存为 change_language.vbs)来自动更改默认语言

Dim Wsh
Set Wsh = Wscript.CreateObject("Wscript.Shell")
Wsh.Run("rundll32.exe shell32.dll,Control_RunDLL intl.cpl,@1,0")

WScript.Sleep 1000
Wsh.SendKeys "+{TAB}"
WScript.Sleep 100
Wsh.SendKeys "{RIGHT}"
WScript.Sleep 100
Wsh.SendKeys "{RIGHT}"
WScript.Sleep 100
Wsh.SendKeys "{TAB}"
WScript.Sleep 100
Wsh.SendKeys " "
WScript.Sleep 500
Wsh.SendKeys "{DOWN}"
WScript.Sleep 500
Wsh.SendKeys "{ENTER}"
WScript.Sleep 200
Wsh.SendKeys "+{TAB}"
WScript.Sleep 200
Wsh.SendKeys "{ENTER}"

您必须根据控制面板小程序中安装的语言数量稍微调整脚本。我有两个,我需要 2 个 VB 脚本,第二个脚本经过修改 - 带有 DOWN 操作的行改为 UP 操作。

您可以使用标准 Windows 程序将这些脚本设置为某些键盘快捷键 - 在桌面上创建这些脚本的快捷方式,并在属性中选择键盘快捷键。

不幸的是,改变默认语言不会影响已经启动的应用程序,只会影响您将要启动的应用程序。

相关内容