EDITWORDBREAKPROCA 回调函数 (winuser.h)
与 EM_SETWORDBREAKPROC 消息一起使用的应用程序定义的回调函数。 多行编辑控件或富编辑控件调用 EditWordBreakProc 函数来中断文本行。
EDITWORDBREAKPROC 类型定义指向此回调函数的指针。 EditWordBreakProc 是应用程序定义的函数名称的占位符。
语法
EDITWORDBREAKPROCA Editwordbreakproca;
int Editwordbreakproca(
[in] LPSTR lpch,
[in] int ichCurrent,
[in] int cch,
[in] int code
)
{...}
参数
[in] lpch
类型: LPTSTR
指向编辑控件文本的指针。
[in] ichCurrent
类型: int
文本缓冲区中字符位置的索引,该索引标识函数应开始检查断字符的点。
[in] cch
类型: int
编辑控件文本中的 TCHAR 数。 对于 ANSI 文本,这是字节数;对于 Unicode 文本,这是 WCHAR 的数量。
[in] code
类型: int
回调函数要执行的操作。 此参数的取值可为下列值之一:
返回值
类型: int
如果 代码 参数指定 WB_ISDELIMITER,则返回值为非零 (TRUE) 如果指定位置的字符为分隔符,则返回值为零(如果不是)。 如果 代码 参数指定 WB_CLASSIFY,则返回值是字符在指定位置处的字符类和断字符标志。 否则,返回值是文本缓冲区中单词开头的索引。
注解
回调函数必须将后跟换行符的回车符视为单个单词。 两个回车符后跟一个换行符也必须被视为单个单词。
应用程序必须通过在 EM_SETWORDBREAKPROC消息中 指定回调函数的地址来安装回调函数。
Rich Edit 1.0:Microsoft Rich Edit 1.0 仅将 ANSI 字符传回 EditWordBreakProc。 对于丰富的编辑控件,可以交替使用 EM_SETWORDBREAKPROCEX 消息将默认的扩展断字过程替换为 EditWordBreakProcEx 回调函数。 此函数提供有关文本的其他信息,例如字符集。
Rich Edit 2.0 及更高版本:Microsoft Rich Edit 2.0 及更高版本仅将 Unicode 字符传回 EditWordBreakProc。 因此,ANSI 应用程序将使用 WideCharToMultiByte 转换 Rich Edit 提供的 Unicode 字符串,然后相应地转换索引。
注意
winuser.h 标头将 EDITWORDBREAKPROC 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
另请参阅
其他资源
引用