问题标签 [text-services-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-c++ - 如何在windows8中找到文本服务框架中的光标位置?
我使用记事本在此服务中实现了示例 IME,我想在文本中光标的位置插入文本。如何获取光标在 Windows 8 中的位置?
visual-c++ - 如何检索 Windows8 中 TSF 管理器使用的文档中的总字符数?
我正在研究 windows8 应用程序中的文本服务框架。在此应用程序文档管理器界面中使用的方法是 (*ppRange)-GetText(ec,TF_TF_IGNOREEND,wStr,WCHAR_MAX, &fetched);此方法仅返回组合模式文本。如何检索文档(记事本)中的总字符?
visual-c++ - 如何在文本服务框架 windows8 应用程序中使用 GetSelection 获取光标位置?
大家好。我正在 DoEditSession 方法中实现此代码。当我尝试获得选择时,我总是得到 1 的值uFetched
。但是光标位置不来了?
我正在使用 Tsf 接口为 Windows RT 开发文本服务。我已经集成了库,这些库根据我们在候选窗口中输入的字母来建议单词。现在我需要获取文档中光标位置之前和之后的字母。所以在这里我使用了 GetSelection 来检索选定的文本。问题是我无法检索文档(记事本)中的插入符号位置。有什么特定的方法可以让我在插入符号/光标位置周围获取字母/文本吗?
text-services-framework - 如何知道输入是 ime 还是 tsf?
我用的是win7 64bit,本地语言是中文。
有些输入使用ime,有些输入使用tsf。
我有时想使用 LoadKeyboardLayout() 来激活特殊的键盘布局,但是当调用 GetKeyboardLayoutName() 时,tsf 输入和默认 ime 返回相同的键盘布局“0x00000804”。</p>
所以我不能使用 LoadKeyboardLayout() 激活 tsf 输入,我知道如何通过 ITfInputProcessorProfiles 接口激活 tsf 输入。
但是如何获取当前输入是 ime 还是 tsf?
谢谢。
windows - Microsoft TSF - 像 IUIAutomation::GetFocusedElement 一样使用 ITfThreadMgr::GetFocus
当我尝试在文本服务上下文之外附加到 Microsoft 文本服务框架 (TSF) 时,我无法检索与活动应用程序文本交互所需的信息。
我在 Windows 7 上使用写字板作为我的目标测试应用程序,并确保在 TSF 方法执行时将注意力集中在写字板上。
该程序尽可能尝试获取当前关注的ITfDocumentMgr ( ITfThreadMgr :: GetFocus ),但返回的文档管理器为 NULL。根据 API 文档,这意味着当前没有重点关注 ITfDocumentMgr,但是:
如果我采用完全不同的方法:注册自定义文本服务并通过ITfTextInputProcessor::Activate接收 ITfThreadMgr 引用,我可以通过 ITfThreadMgr::GetFocus 为写字板检索聚焦的 ITfDocumentMgr。但是由于各种原因,我不想安装自定义的 inproc 文本服务。
是否有任何方法可以跨进程边界连接到 TSF API,就像AutomationElement.FocusedElement
,IUIAutomation::GetFocusedElement
或一样AccessibleObjectFromWindow
?
callback - 应用程序未通过文本服务框架 DLL 检测输入语言更改
好的,我已经有一段时间了......
我正在尝试跟踪用户何时从语言栏更改输入语言。
我有一个文本服务 DLL - 从 MSDN 和 WinSDK 示例建模 - 注册良好,我可以使用接口 ITfActiveLanguageProfileNotifySink 和 ITfLanguageProfileNotifySink 并很好地查看这些事件。
我也终于意识到,当我更改语言时,这些事件发生在当前具有焦点的应用程序/进程中。
我需要做的是简单地让这些事件能够回调到我自己的应用程序,当它有焦点时。我知道我错过了一些东西。
任何帮助在这里表示赞赏。
谢谢。
chinese-locale - ITfLanguageProfileNotifySink 用于中文子语言更改
简单地说:为什么在将输入语言(从语言栏)更改为中文(繁体)之一时,ITfLanguageProfileNotifySink 接口接收器似乎没有调用 OnLanguageChange 方法,例如昌捷或新拼音?这是在Windows 7上。我从说英语到中文,但是当我选择不同的中文(子)语言时,没有通知?!
com - 文本服务框架应用程序
我可以找到大量关于如何制作文本服务框架服务的示例,但找不到关于如何制作实际使用它的应用程序的示例。当我尝试在 C# 中执行此操作时,我得到了足够的结果,甚至可以使用 C++ 示例,如果这是我所能得到的!
c++ - 失去焦点时应用程序未检测到语言变化
我已经实现了继承 ITfLanguageProfileNotifySink 接口的类。它正在工作,我可以在语言更改时收到事件,但只有当我的应用程序专注时。
当我的应用程序没有集中注意力时,我应该怎么做才能检测到应用程序中的语言变化?
delphi - Delphi + Windows 文本服务框架
有什么方法可以使用/集成 Delphi 应用程序与文本服务框架?
我特别在想 InputScope.h 的东西(比如 ITfInputScope / SetInputScopes)
默认情况下,VCL 框架仅与 ITextInputPanel (PenInputPanel.h) 挂钩...