IImePad::Request 方法 (imepad.h)

IImePadApplet 调用以将文本插入应用。

RequestIImePadApplet 可以调用的唯一方法。 通过使用 IMEPADREQ_* 请求 ID 之一调用此方法, IImePadApplet 可以将文本插入应用中,并且可以控制应用中 IME 的合成字符串。

语法

HRESULT Request(
  [in]      IImePadApplet *pIImePadApplet,
  [in]      INT           reqId,
  [in, out] WPARAM        wParam,
  [in, out] LPARAM        lParam
);

parameters

[in] pIImePadApplet

调用小程序的接口指针。

[in] reqId

请求 ID) (请求类型。 必须将其设置为以下值之一:

含义
IMEPADREQ_INSERTSTRING
将字符串作为合成字符串插入应用。
  • wParam:指向要插入到应用中的 以 NULL 结尾的字符串 (LPWSTR) 的指针。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_SENDCONTROL
控制应用中字符串和插入点的构成。
  • wParam:指定 (IMEPADCTRL_*) 的控件值,该值请求输入法处理合成字符串和插入符号位置。 有关 IMEPADCTRL_* 值的列表,请参阅“备注”。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_SETAPPLETSIZE
设置新的小程序窗口大小。
  • wParam:LOWORD (wParam) 指定小程序的宽度。 HIWORD (wParam) 指定小程序的高度
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_GETCOMPOSITIONSTRING
获取当前组合字符串文本。
  • wParam:指向接收当前合成字符串文本 (LPWSTR) 缓冲区。
  • lParam:要复制的最大字符数,包括终止 null 字符。
IMEPADREQ_GETCOMPOSITIONSTRINGINFO
获取有关当前组合字符串的信息。
  • wParam:指向接收合成信息的 IMECOMPOSITIONSTRINGINFO 结构的指针。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_DELETESTRING
删除合成字符串。
  • wParam:LOWORD (wParam) 指定要删除的合成字符串的起始位置。 HIWORD (wParam) 指定要删除的合成字符串的长度。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_CHANGESTRING
替换组合字符串的一部分。
  • wParam:指向替换字符串 (LPWSTR) 的指针。
  • lParam:LOWORD (lParam) 指定要替换的合成字符串的起始位置。 HIWORD (lParam) 指定要替换的合成字符串的长度。
IMEPADREQ_GETAPPLHWND
获取应用程序窗口句柄。
  • wParamHWND 句柄地址 (HWND *) 接收应用程序窗口句柄。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_FORCEIMEPADWINDOWSHOW
使 ImePad 窗口保持可见。
  • wParam如果为 TRUE ,则保持 IMEPad 窗口可见。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_POSTMODALNOTIFY
使 IImePad 使用特定通知 ID 和用户定义的数据异步调用小程序的 Notify 方法。
  • wParam:通知代码 (IMEPN_*) 。 有关可能的 IMEPN_* 代码,请参阅 IImePadApplet::Notify 的备注。
  • lParam:用户定义的数据
IMEPADREQ_GETDEFAULTUILANGID
获取建议 (默认) ImePad 小程序 UI 语言。
  • wParam:语言 ID 的地址 (LANGID *) 接收默认 UI 语言。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_GETCURRENTUILANG
获取当前 ImePad 小程序 UI 语言。
  • wParam:语言 ID (LANGID *) 接收当前 UI 语言的地址。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_GETAPPLETUISTYLE
获取小程序的 UI 样式 (IPAWS_* 标志) 。
  • wParam:接收小程序 UI 样式 (DWORD *) 的地址。 样式是 IPAWS_* 标志的组合;有关可能的 IPAWS_* 标志,请参阅备注。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_SETAPPLETUISTYLE
设置小程序的 UI 样式 (IPAWS_* 标志) 。
  • wParam:小程序 UI 样式。 样式是 IPAWS_* 标志的组合;有关可能的 IPAWS_* 标志,请参阅备注。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_ISAPPLETACTIVE
确定小程序是否处于活动状态。
  • wParam:用于接收 值 (BOOL *) 的地址。 如果为 TRUE,则小程序处于活动状态;否则小程序不处于活动状态。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_ISIMEPADWINDOWVISIBLE
确定 ImePad 是否可见。
  • wParam:用于接收 值 (BOOL *) 的地址。 如果为 TRUE,则 ImePad 可见;否则,ImePad 不可见。
  • lParam:未使用。 必须设置为 0。
IMEPADREQ_SETAPPLETMINMAXSIZE
设置最小和最大小程序大小。
  • wParam:LOWORD (wParam) 指定小程序宽度。 HIWORD (wParam) 指定小程序的高度。
  • lParamTRUE 设置最大大小; FALSE ,用于设置最小大小。
IMEPADREQ_GETCONVERSIONSTATUS
获取当前应用程序输入法的转换状态。 有关转换和句子模式的完整列表,请参阅头文件 Imm.h。
  • wParam:接收转换模式的地址 (DWORD *) 。
  • lParam:接收句子模式的地址 (DWORD *) 。
IMEPADREQ_GETVERSION
获取 IImePad 的版本信息。
  • wParam:接收主版本 (DWORD *) 的地址。
  • lParam:接收次要版本 (DWORD *) 的地址。
IMEPADREQ_GETCURRENTIMEINFO
获取调用 ImePad 的 IME 信息。
  • wParam:接收 IME 语言 ID 的地址 (DWORD *) 。
  • lParam:接收 IME 输入 ID 的地址 (DWORD *) 。

[in, out] wParam

特定于 reqId 的其他信息。

[in, out] lParam

特定于 reqId 的其他信息。

返回值

如果成功,则S_OK ,否则 E_FAIL

注解

可能的 IMEPADCTRL_*

以下是当 reqId 设置为 IMEPADREQ_SENDCONTROLwParam 可以采用的可能值:
名称 说明
IMEPADCTRL_CONVERTALL 1 转换所有组合字符串。
IMEPADCTRL_DETERMINALL 2 确定所有组合字符串。
IMEPADCTRL_DETERMINCHAR 3 确定指定计数的合成字符串字符。
IMEPADCTRL_CLEARALL 4 清除所有组合字符串。
IMEPADCTRL_CARETLEFT 6 将字符插入点向左移动。
IMEPADCTRL_CARETRIGHT 7 将字符插入点向右移动。
IMEPADCTRL_CARETTOP 8 将字符插入点移动到合成字符串的顶部。
IMEPADCTRL_CARETBOTTOM 9 将字符插入点移动到组合字符串的末尾。
IMEPADCTRL_CARETBACKSPACE 10 删除插入点前的字符 (如 BACKSPACE 键) 。
IMEPADCTRL_CARETDELETE 11 删除插入符号 ((如 DELETE 键) )后面的组合字符串的字符。
IMEPADCTRL_PHRASEDELETE 12 删除合成字符串的短语。
IMEPADCTRL_INSERTSPACE 13 插入空格字符 - 全宽或半宽,具体取决于 IME 配置。
IMEPADCTRL_INSERTFULLSPACE 14 插入全宽空间。
IMEPADCTRL_INSERTHALFSPACE 15 插入半角空间。
IMEPADCTRL_ONIME 16 将 IME 设置为 ON。
IMEPADCTRL_OFFIME 17 将 IME 设置为 OFF。
IMEPADCTRL_ONPRECONVERSION 18 将预转换设置为 ON。
IMEPADCTRL_OFFPRECONVERSION 19 将预转换设置为 OFF。
IMEPADCTRL_PHONETICCANDIDATE 20 打开 IME 的候选项。
 

可能的 IPAWS_*

reqId 设置为 IMEPADREQ_GETAPPLETUISTYLE 时,可以通过 wParam 接收这些值,或者当 reqId 设置为 IMEPADREQ_SETAPPLETUISTYLE 时,wParam可以设置为 :
名称 说明
IPAWS_ENABLED 将小程序显示为已启用的窗口。
IPAWS_SIZINGNOTIFY IMEPN_SIZECHANGINGIMEPN_SIZECHANGED 通知代码发送到小程序。
IPAWS_VERTICALFIXED 垂直固定。
IPAWS_HORIZONTALFIXED 水平固定。
IPAWS_SIZEFIXED 大小是固定的。
IPAWS_MAXWIDTHFIXED 最大宽度是固定的。
IPAWS_MAXHEIGHTFIXED 最大高度是固定的。
IPAWS_MAXSIZEFIXED 最大大小是固定的。
IPAWS_MINWIDTHFIXED 最小宽度是固定的。
IPAWS_MINHEIGHTFIXED 最小高度是固定的。
IPAWS_MINSIZEFIXED 最小大小是固定的。

要求

   
目标平台 Windows
标头 imepad.h

另请参阅

IImePad

IImePadApplet

IMECOMPOSITIONSTRINGINFO