如何模拟Alt + Shift以更改Windows中的语言(II部分)?

使用ActivateKeyboardLayout解决了问题(动态切换语言),但是当我在表单上动态创建组件时(例如,TEdit),它仍然存在。当此组件成为焦点时,语言将更改为默认值。我在创建组件后尝试再次使用ActivateKeyboardLayout,但它没有用。有任何想法吗 ?     
已邀请:
首先你必须使用“Windows”然后你可以使用这种方法: ActivateKeyboardLayout(EnglishLayoutHandle,KLF_ACTIVATE) 你可以为你想要的任何lang改变“EnglishLayoutHandle”     
您的问题可能与此问题类似。 否则此代码执行此操作:
keybd_event(VK_MENU, 0, 0, 0);
keybd_event(VK_SHIFT, 0, 0, 0);
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0 );
keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0);
    

要回复问题请先登录注册