TSF输入法列表获取
来源:互联网 发布:java自学网 编辑:程序博客网 时间:2024/05/16 16:06
TSF:
Microsoft Windows 文本服务框架(TSF) 是一个包含在Windows XP 及其后继版本操作系统的系统服务。TSF为高级文本输入的通信以及自然语言技术提供了一个简单的可扩展的框架。
以上引自百度百科。
引用Winapi.MsCTF单元,如果没有去高版本XE里面搜一搜,或者百度一下。
procedure TForm1.btnSTFClick(Sender: TObject);var profiles: PPTfInputProcessorProfiles; Iprofiles: ITfInputProcessorProfiles; plangid: Word; enumerator: IEnumTfLanguageProfiles; langProfile: TF_LANGUAGEPROFILE; FetchedItems: Cardinal; pbstrProfile: WideString; pfEnable: Integer;begin if not IsMSCTFAvailable() then Exit; if (TF_CreateInputProcessorProfiles(profiles) = (S_OK) then begin Iprofiles := ITfInputProcessorProfiles(profiles^); Iprofiles.GetCurrentLanguage(plangid); Memo1.Lines.Add(IntToStr(plangid)); if plangid > -1 then begin Iprofiles.EnumLanguageProfiles(plangid, enumerator); if Assigned(enumerator) then begin enumerator.Next(1, langProfile, FetchedItems); while FetchedItems > 0 do begin // Memo1.Lines.Add(langProfile.clsid.ToString()); // Memo1.Lines.Add(langProfile.langid.ToString()); // Memo1.Lines.Add(langProfile.fActive.ToString()); // -1时为当前激活输入法 pbstrProfile := ''; if Iprofiles.GetLanguageProfileDescription(langProfile.clsid, langProfile.langid, langProfile.guidProfile, pbstrProfile) = S_OK then begin //Memo1.Lines.Add(pbstrProfile); if Iprofiles.IsEnabledLanguageProfile(langProfile.clsid, langProfile.langid, langProfile.guidProfile, pfEnable) = S_OK then begin if pfEnable = 1 then begin //显示TSF输入法名称 Memo1.Lines.Add(pbstrProfile); //激活指定输入法(clsid、 guidProfile为空时,取消激活) if pbstrProfile = '微软ABC' then Iprofiles.ActivateLanguageProfile(langProfile.clsid, langProfile.langid, langProfile.guidProfile); end; end; end; enumerator.Next(1, langProfile, FetchedItems); end; end; end; end;end;
阅读全文
1 0
- TSF输入法列表获取
- TSF输入法
- tsf切换输入法
- 获取输入法列表
- TSF输入法框架的工作原理
- 输入法的TSF框架(Text Service Framework)简介
- 微软新一代输入法框架 TSF - Text Service Framework 小小的研究
- 如何让全屏游戏的文本编辑框支持IME和TSF输入法
- 获取输入法
- 获取输入法
- 显示系统输入法列表
- 汉语输入法无选择列表
- TSF专题【转】
- TSF 响应按键
- Symbian获取输入法状态
- delphi 获取当前输入法
- 获取当前输入法
- Android 获取输入法高度
- 记腾讯机器学习基础研究岗2017年秋招笔试
- java面试题
- Byte Short Int Long的长度
- 网易2017春招[编程题]赶去公司@Java
- php array函数归纳总结
- TSF输入法列表获取
- javascript canvas 模拟mac最小化
- Android Studio 高级配置
- java之乱码
- 安卓基础--实现从系统相机,相册获取图片
- 华硕超算服务器安装Ubuntu+CUDA8+cudnn6+anaconda+tensorflow
- mac上创建unity项目在移动硬盘,删除文件会报unity attempt to write a readonly database
- Android8.0运行时权限策略变化和适配方案
- SCUT Training 20170913 Problem E