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 [仅限桌面应用] |
目标平台 | 窗户 |
标头 | winuser.h (包括 Windows.h) |
另请参阅
其他资源
参考