ITfInsertAtSelection::InsertTextAtSelection


ITfInsertAtSelection 接口由管理器实现,文本服务用于在上下文中插入文本或嵌入对象。 文本服务通过调用 ITfContext::QueryInterface 获取此接口。

ITfInsertAtSelection::InsertTextAtSelection

在所选内容或插入点插入文本

HRESULT InsertTextAtSelection(
  [in]  TfEditCookie ec,
  [in]  DWORD        dwFlags,
  [in]  const WCHAR  *pchText,
  [in]  LONG         cch,
  [out] ITfRange     **ppRange
);


参数

[in] ec

标识编辑上下文。 这是从 ITfDocumentMgr::CreateContext 或 ITfEditSession::D oEditSession 获取的。

[in] dwFlags

具有以下值之一的位字段。

Value含义
  • TF_IAS_NOQUERY

ppRange 为 NULL。 此标志不能与TF_IAS_QUERYONLY标志组合在一起。
  • TF_IAS_QUERYONLY

上下文未修改,但 ppRange 设置为好像插入已发生。 只读访问权限已足够。 如果未设置此标志, ec 必须具有读/写访问权限。 此标志不能与TF_IAS_NOQUERY标志组合在一起。
  • TF_IAS_NO_DEFAULT_COMPOSITION

如果需要组合,管理器将不会创建默认组合。 调用方必须创建一个包含插入文本的合成对象,然后才能释放上下文锁。

[in] pchText

指定要插入的文本。

[in] cch

指定 pchText 中文本的字符计数。

[out] ppRange

接收插入的对象的位置。

返回值

此方法可以返回其中一个值。

Value说明
  • S_OK

该方法成功。
  • TF_E_NOLOCK

文本服务没有文档锁
  • TF_E_DISCONNECTED

上下文对象不在文档堆栈上。
  • TS_E_NOSELECTION

上下文没有选择。
  • TS_E_READONLY

选择是只读的。