GetWindowTextLength
注:本文档由 无符号整形 翻译,小甲鱼校对。原文链接 -> 传送门
函数功能:
GetWindowTextLength 函数用于获取指定窗口标题栏(如果存在)文本的长度。如果指定的窗口是一个控件,函数将获取控件中文本的长度。然而, GetWindowTextLength 函数不能获取另一个应用程序中控件的文本长度。
API 函数原型:
注释:_In_ 说明该参数是输入的。
int WINAPI GetWindowTextLength(
_In_ HWND hWnd
);
参数解析:
参数 含义
hWnd 指向窗口或控件的句柄
返回值:
1. 如果函数成功,返回值是文本的长度、字符的长度。在一定条件下,这个值实际上可能大于文本的长度。对于更多信息,见下面的备注部分;
2. 如果窗口没有文本,则返回值为 0。
获取有关错误的更多信息,请调用 GetLastError 函数。
备注:
1. 如果目标窗口是当前进程所拥有,GetWindowTextLength 函数发送 WM_GETTEXTLENGTH 消息到指定的窗口或控件。
2. 在一定的条件下, GetWindowTextLength 函数的返回值可能大于实际文本长度。这是因为 ANSI 和 Unicode 混用以及系统允许双字节字符集( DBCS)在文本内存在的原因。但是函数返回值至少要与文本的实际长度相等,因此可以利用这一点来指示缓冲区分配的问题。当应用程序既使用了 ANSI 函数又使用 Unicode 的通用对话框就会发生缓存分配的问题;同样,一个应用程序既使用 ANSI 版本的 GetWindowTextLength 函数又使用了一个 Unicode 的窗口过程就会有缓存分配的问题。或者在一个 ANSI 的窗口过程中内使用了 Unicode 的 GetWindowTextLength 函数时也会有缓存分配的问题。
3. 要获取文本的实际长度,使用 WM_GETTEXT 、 LB_GETTEXT 、CB_GETLBTEXT 消息或者调用 GetWindowText 函数。
需求:
Minimum supported client Windows 2000 专业版 [仅桌面应用程序]
Minimum supported server Windows 2000 服务器版 [仅桌面应用程序]
Header Winuser.h (包含于 Windows.h)
Library User32.lib
DLL User32.dll
Unicode and ANSI names GetWindowTextLengthW (Unicode) 和 GetWindowTextLengthA (ANSI)
【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。
页:
[1]