分享

GetWindowText

 牛人的尾巴 2014-11-19

GetWindowText

目录
展开

函数功能

该函数将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。如果指定的窗口是一个控件,则拷贝控件的文本。但是,GetWindowText不能接收其他应用程序中控件的文本。

函数原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount);

参数

hWnd:带文本的窗口或控件的句柄。

IpString:指向接收文本的缓冲区的指针。

nMaxCount:指定要保存在缓冲区内的字符的最大个数,其中包含NULL字符。如果文本超过界限,它就被截断。

getwindowtext的DELPHI例子:

var

p:pchar;

begin

getmem(p,255);

getwindowtext(application.Handle,p,255);

showmessage(strpas(p));

freemem(p);

end;

返回值

如果函数成功,返回值是拷贝的字符串的字符个数,不包括中断的空字符;如果窗口无标题栏或文本,或标题栏为空,或窗口或控制的句柄无效,则返回值为零。若想获得更多错误信息,请调用GetLastError函数。

函数不能返回在其他应用程序中的编辑控件的文本。

备注

函数定义

如果目标窗口属于当前进程,GetWindowText函数给指定的窗口或控件发送WM_GETTEXT消息。如果目标窗口属于其他进程,并且有一个窗口标题,则GetWindowTeXt返回窗口的标题文本,如果窗口无标题,则函数返回空字符串。

速查:Windows NT:3.1以上版本;Windows:95以上版本:Windows CE:1.0以上版本;头文件:Winuser.h;库文件:user32.lib:Unicode:在Windows NT上实现为Unicode和ANSI两种版本。

int GetWindowText(

LPTSTR lpszStringBuf,

int nMaxCount

) const;

void GetWindowText(

CString& rString

) const;

Parameters参数

lpszStringBuf

[out] Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character.

nMaxCount

[in] Specifies the maximum number of characters to copy to the buffer, including the NULL character. If the text exceeds this limit, it is truncated.

rString

A CString object that is to receive the copied string of the window's title.

Return Value返回值

Specifies the length, in characters, of the copied string, not including the terminating null character. It is 0 if CWnd has no caption or if the caption is empty.

Remarks

If the CWnd object is a control, the GetWindowText member function copies the text within the control instead of copying the caption.

This member function causes the WM_GETTEXT message to be sent to the CWnd object.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多