在Windows上获取键盘语言
问题描述:
我知道我可以使用GetKeyboardLayout function来检索当前的键盘语言。 但是我仍然对如何使用这个函数的返回值感到困惑。在Windows上获取键盘语言
有人可以写下一个关于如何使用它的实际例子,例如,检查键盘是否设置为英语? (我正在使用C++)
预先感谢您。
答
找到解决方案!
HKL KeyboardLayout = GetKeyboardLayout(0);
if (PRIMARYLANGID(KeyboardLayout) == LANG_ENGLISH)
如果(PRIMARYLANGID(HKL&0xFFFF的)== LANG_ENGLISH) –
@HansPassant,感谢您的答复。 其实我不认为你写的是完全正确的,因为我得到一个错误(“表达式必须有整型或无限型枚举类型”),但它绝对指出我正确的方向。 在我的Visual C++中,它似乎能够以这种方式正常工作: if(PRIMARYLANGID(KeyboardLayout)== LANG_ENGLISH) – Flavio
好吧,不要告诉我,只要发布正确的代码来完成您的Q + A并接受它作为答案。 –