如何模拟 Alt+Shift 来更改 Windows 中的语言(第二部分)?
问题(动态切换语言)通过 解决ActivateKeyboardLayout,但当我在表单上动态创建组件(例如 TEdit )时它仍然存在。当该组件获得焦点时,语言将更改为默认语言。创建组件后,我尝试再次使用ActivateKeyboardLayout,但它不起作用。有什么想法吗?
The problem (switching language dynamically) is solved with ActivateKeyboardLayout, but it still remains when i dynamically create a component on the form ( for ex. TEdit ). When this component gets into focus, the language changes to default. I tried use again ActivateKeyboardLayout, after creating the components, but it did not worked. Any ideas ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
首先你必须使用“Windows”然后你可以使用这个方法:
激活键盘布局(EnglishLayoutHandle,KLF_ACTIVATE)
您可以将“EnglishLayoutHandle”更改为您想要的任何语言
at first you have to use "Windows" then you can use this method:
ActivateKeyboardLayout(EnglishLayoutHandle, KLF_ACTIVATE)
you can change "EnglishLayoutHandle" for any lang you want
您的问题可能与此问题类似。
否则这段代码会这样做:
Your problem may be similar to this question.
Otherwise this code does it:
在控制台应用程序上使用
On the Console application use