GetWindowTextLength是一种函式,该函式返回指定视窗的标题文本(如果存在)的字元长度。如果指定视窗是一个控制项,函式将返回控制内文本的长度。但是GetWindowTextLength函式不能返回在其他应用程式中的控制的文本长度。
基本介绍
- 外文名:GetWindowTextLength
- 函式原型:uint GetWindowTextLength
- hWnd:视窗或控制项的句柄
- Windows NT:3.1以上版本
函式原型
uint GetWindowTextLength(HWND hWnd);
其他信息
hWnd视窗或控制的句柄。
返回值:如果函式成功,返回值为文本的字元长度。在一定的条件下,返回值可能比实际的文本长度大。请参看说明。如果视窗无文本,返回值为零。若想获得更多错误信息,请调用GetLastError函式。
备注:如果目标视窗属于当前进程,GetWindowTextLength函式给指定的视窗或控制传送WM_GETTEXT讯息。
在一定的条件下,函式GetWindowTextLength的返回值可能比实际的文本长度大。这是由于ANSI和Unlcode的混和使用以及系统允许DBCS字元在文本记忆体在的原因,但是函式返回值要至少与文本的实际长度相等,因此可以利用这一点指导快取区的分配。在应用程式既使用ANSI函式又使用Unicode的普通对话框时就会有快取分配的问题;同样,当应用程式在一个Unicode的视窗过程中使用了ANSI的GetWindowTextLength函式,或在一个ANSI的视窗过程中使用了Unicode的GetWindowTextLength函式的时候也有快取分配的问题。查看ANSI和Unicode函式,参考Wind32函式prototypes。
要获得文本的实际长度,使用WM_GETTEXT, LB_GETTEXT或CB_GETLBTBTEXT讯息或GetWindowText函式。
速查:Windows NT:3.1以上版本:Windows:95以上版本:Windows CE:1.0以上版本;头档案:Winuser.h;库档案:user32.lib;Unicode:在Windows NT上实现为山Unicode和ANSI两种版本。