CWnd* GetWindow( UINT nCmd ) const;
返回值:
返回要求的窗口指针;如果没有,则返回NULL。
返回的指针可能是临时的,不应保存以供将来使用。
参数:
nCmd | 指定了CWnd和返回的窗口之间的关系。可以取下列值之一:
|
CWnd::GetWindowContextHelpId
DWORD GetWindowContextHelpId( ) const;
返回值:帮助上下文标识符。如果窗口没有帮助上下文,则返回0。
说明:调用这个函数以获得与窗口相关的帮助上下文标识符,如果有的话。
CWnd::GetWindowDC
CDC* GetWindowDC( );
返回值:
如果这个函数成功,则返回给定窗口的显示环境;否则返回NULL。
返回的指针可能是临时的,不应保存以供将来使用。在每次成功地调用了GetWindowDC之后,必须调用ReleaseDC。
说明:
这个函数获得整个窗口的显示环境,包括标题条、菜单和滚动条。窗口的显示环境允许程序在CWnd的任何地方绘图,因为该环境的原点是在CWnd的左上角,而不是客户区的左上角。
每次获得环境的时候都给它赋以缺省的属性。以前的设置将会丢失。
GetWindowDC用于在CWnd的非客户区实现特殊的绘图效果。不推荐在任何窗口的非客户区绘图。
可以利用Windows的GetSystemMetrics函数来获得非客户区的不同部分的大小,如标题条、菜单和滚动条。
在绘图结束以后,必须调用ReleaseDC成员函数以释放显示环境。如果没有成功地释放显示环境,则可能会严重影响应用程序要求的绘图,因为在同一时刻能打开的显示设备环境的数目是有限的。
CWnd::GetWindowPlacement
BOOL GetWindowPlacement( WINDOWPLACEMENT* lpwndpl ) const;
返回值:如果函数执行成功,则返回非零值;否则返回0。
参数:
lpwndpl | 指向一个WINDOWPLACEMENT结构,用于接收显示状态和位置信息。 |
说明:
这个函数获得窗口的显示状态和正常(复原的)、最小化和最大化的位置。
这个函数获得的WINDOWPLACEMENT结构中的flags成员总是0。如果CWnd是最大化的,则WINDOWPLACEMENT的showCmd成员为SW_SHOWMAXIMIZED。如果窗口是最小化的,则为SW_SHOWMINIMIZED;否则它为SW_SHOWNORMAL
CWnd::GetWindowRect
void GetWindowRect( LPRECT lpRect ) const;
参数: lpRect 指向一个CRect对象或RECT结构,用于接收左上角和右下角的屏幕坐标。
说明:
这个函数将CWnd对象的边界矩形的大小拷贝到lpRect所指向的结构中。大小是用相对于显示器屏幕左上角的屏幕坐标给出的,其中包括了标题条,边框和滚动条的大小,如果有的话。
CWnd::GetWindowRgn
int GetWindowRgn( HRGN hRgn )const;
返回值:
返回值指定了该函数获得的区域的类型。可以是下列值之一:
· | NULLREGION | 区域为空。 |
· | SIMPLEREGION | 区域是一个简单的矩形。 |
· | COMPLEXREGION | 区域包括多于一个矩形。 |
· | ERROR | 发生了错误,区域没有受到影响。参数hRgn窗口区域的句柄。 |
参数:
hRgn | 窗口区域的句柄。 |
说明:
调用这个成员函数以获得窗口的窗口区域。窗口区域确定了操作系统允许画出窗口的区域。操作系统不会在窗口区域之外显示窗口的任何部分。窗口的窗口区域的坐标是相对于窗口的的左上角的,不是窗口的客户区域。要设置窗口的窗口区域,调用CWnd::SetWindowRgn。
CWnd::GetWindowText
int GetWindowText( LPTSTR lpszStringBuf, int nMaxCount ) const;
void GetWindowText( CString& rString ) const;
返回值:
指定了要拷贝的字符串的长度,以字节为单位,不包括结尾的空字符。如果CWnd没有标题或标题为空,则为0。
参数:
lpszStringBuf | 指向要接收窗口标题的复制字符串的缓冲区。 |
nMaxCount | 指定了要拷贝的缓冲区的最大字符数目。如果字符串比nMaxCount指定的数目还要长,则被截断。 |
rString | 用于接收窗口标题的复制字符串的CString对象。 |
说明:
这个函数将CWnd的标题(如果有)拷贝到lpszStringBuf指向的缓冲区或者目的字符串rString。如果CWnd对象是一个控件,则GetWindowText成员函数将拷贝控件内的文本(而不是控件的标题)。这个成员函数会向CWnd对象发送一个WM_GETTEXT消息。
CWnd::GetWindowTextLength
int GetWindowTextLength( ) const;
返回值:指定了文本的长度,不包括任何结尾的空字符。如果不存在任何文本,则返回0。
说明:
返回CWnd的标题对象的长度。如果CWnd是一个控件,则GetWindowTextLength成员函数返回控件内文本的长度(而不是标题的长度)。这个成员函数会向CWnd对象发送一个WM_GETTEXTLENGTH消息。
这个函数经常用到;
CWnd::ScreenToClient
void ScreenToClient( LPPOINT lpPoint ) const;
void ScreenToClient( LPRECT lpRect ) const;
参数:
lpPoint | 指向一个CPoint对象或POINT结构,其中包含了要转换的屏幕坐标。 |
lpRect | 指向一个CRect对象或RECT结构,其中包含了要转换的屏幕坐标。 |
说明:
将显示器上给定点或矩形的屏幕坐标转换为客户坐标。
ScreenToClient成员函数将lpPoint或lpRect给定的屏幕坐标替换为客户坐标。新的坐标是相对于CWnd客户区的左上角的。
就是转换坐标系;