新手问一上关于GetDC
新手问一下关于GetDC在一个CView类里面看到HDC hdchdcGetDC(m_hWnd)请问一下怎么等待cview的句柄是m_hW
新手问一下关于GetDC
在一个CView类里面看到
HDC hdc;
hdc=GetDC(m_hWnd);
请问一下怎么等待cview的句柄是m_hWnd的,为什么是这个名字,难道有默认,那对于CmainFrm来说是不是也有,希望能详细讲下,谢谢大家
[解决办法]MFC所有的窗口、控件的基类都是CWnd
CWnd有个成员变量m_hWnd保存自身窗口句柄.
[解决办法]m_hWnd这个成员变量,最早是定义在类CWnd中,而且是类CWnd的第一个数据成员,
先看一下MSDN的解析:
The handle of the Windows window attached to this CWnd. The m_hWnd data member is a
public variable of type HWND.
由此可知,它是窗口类的一个句柄,凡是从CWnd派生的类都有这个句柄,凡是以CWnd派
生的类定义的对象内部也都有这个句柄,它是类或者对象标识自己的句柄。
凡是窗口都有一个句柄用来标识自己,在CWnd类中将这个句柄作为一个成员变量直接封装
了,所以CWnd类的成员函数都没有句柄这个参数了,比如::ShowWindow(HWND hWnd),在
CWnd类或者派生类中,这个函数就没有参数了,CWnd::ShowWindow(),其实这个函数实
现很简单,就是调用了::ShowWindow(HWND hWnd),因为在类里已经封装好了,所以也不需
要在传递参数了。
[解决办法],为什么是这个名字,难道有默认,那对于CmainFrm来说是不是也有=
===================
对于所有CWnd或是它的子类,都有这个成员。