WM_GETTEXTLENGTH消息
确定与窗口关联的文本的长度(以字符为单位)。
#define WM_GETTEXTLENGTH 0x000E
参数
-
wParam
-
不使用此参数,并且必须为零。
-
lParam
-
不使用此参数,并且必须为零。
返回值
类型: LRESULT
返回值是文本的长度(以字符为单位),不包括终止 null 字符。
备注
对于编辑控件,要复制的文本是编辑控件的内容。 对于组合框,文本是编辑控件 (或组合框的静态文本) 部分的内容。 对于按钮,文本是按钮名称。 对于其他窗口,文本是窗口标题。 若要确定列表框中项的长度,应用程序可以使用 LB_GETTEXTLEN 消息。
发送 WM_GETTEXTLENGTH 消息时, DefWindowProc 函数返回文本的长度(以字符为单位)。 在某些情况下, DefWindowProc 函数返回的值大于文本的实际长度。 这与 ANSI 和 Unicode 的某些混合形式发生,这是因为系统允许文本中可能存在双字节字符集 (DBCS) 字符。 但是,返回值将始终至少与文本的实际长度一样大;因此,始终可以使用它来指导缓冲区分配。 当应用程序同时使用 ANSI 函数和使用 Unicode 的常见对话时,可能会发生此行为。
若要获取文本的确切长度,请使用 WM_GETTEXT、 LB_GETTEXT或 CB_GETLBTEXT 消息或 GetWindowText 函数。
向非文本静态控件(如静态位图或静态图标控件)发送 WM_GETTEXTLENGTH 消息不会返回字符串值。 而是返回零。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|
另请参阅
-
引用
-
概念性
-
其他资源