2
我的Qt应用程序支持在Linux和Windows上更改输入语言。我想在Mac OSX中添加对更改输入语言的支持。如何以编程方式更改Mac OS X键盘布局?
不幸的是,我没有任何有关Mac SDK的信息。 (我与OS X的第一和最后一个工作是在编译Qt和编译我的应用程序!)
我google搜索这个问题,我发现我需要使用Text Input Source Services,也是我发现这些代码:
TISInputSourceRef isref;
isref = TISCopyCurrentKeyboardInputSource();
CFDataRef uchr = (CFDataRef)TISGetInputSourceProperty(isref, kTISPropertyUnicodeKeyLayoutData);
UCKeyboardLayout * keyLayoutPtr=(UCKeyboardLayout*)CFDataGetBytePtr(uchr);
是keyLayoutPtr
当前键盘布局的指针?
如果对上述问题的回答是“是”,那么我应该与keyLayoutPtr
进行比较?
换句话说,我该如何检查当前的键盘布局是否是(例如)“英语”? (或者类似的东西在Win API LANG_ENGLISH
或XLIB us
)