CPaintDC
类
从 CDC
派生的设备上下文类。
语法
class CPaintDC : public CDC
成员
公共构造函数
名称 | 描述 |
---|---|
CPaintDC::CPaintDC |
构造连接到指定的 CWnd 的 CPaintDC 。 |
公共数据成员
“属性” | 描述 |
---|---|
CPaintDC::m_ps |
包含用于绘制工作区的 PAINTSTRUCT 。 |
受保护的数据成员
名称 | 描述 |
---|---|
CPaintDC::m_hWnd |
附加此 CPaintDC 对象的 HWND 。 |
注解
它在构造时执行 CWnd::BeginPaint
,在销毁时执行 CWnd::EndPaint
。
仅当响应 WM_PAINT
消息(通常在 OnPaint
消息处理程序成员函数)时,才能使用 CPaintDC
对象。
有关使用 CPaintDC
的详细信息,请参阅设备上下文。
继承层次结构
CPaintDC
要求
标头:afxwin.h
CPaintDC::CPaintDC
构造对象 CPaintDC
,准备用于绘制的应用程序窗口,并将 PAINTSTRUCT
结构存储在 m_ps
成员变量中。
explicit CPaintDC(CWnd* pWnd);
参数
pWnd
指向 CPaintDC
对象所属的 CWnd
对象。
备注
如果 Windows GetDC
调用失败,则会引发(类型为 CResourceException
)的异常。 如果 Windows 已分配其所有可用的设备上下文,则设备上下文可能不可用。 应用程序将争夺 Windows 下给定时间内可用的五种常见显示上下文。
示例
// Get a dc for a CWnd pointer.
CPaintDC dc(pWnd);
// Get a dc for a HWND.
CPaintDC dc2(CWnd::FromHandle(hWnd));
CPaintDC::m_hWnd
附加此 CPaintDC
对象的 HWND
。
HWND m_hWnd;
注解
m_hWnd
是类型 HWND
的受保护变量。
示例
// Get a dc for a CWnd object pointer.
CPaintDC dc(pWnd);
// Send my private message.
::SendMessage(pWnd->m_hWnd, WM_MYMESSAGE, (LPARAM)& dc.m_ps, 0);
CPaintDC::m_ps
m_ps
是类型 PAINTSTRUCT
的公共成员变量。
PAINTSTRUCT m_ps;
备注
传递给 CWnd::BeginPaint
并由其填充的是 PAINTSTRUCT
。
PAINTSTRUCT
包含应用程序用来绘制与 CPaintDC
对象关联的窗口的工作区的信息。
请注意,可以通过 PAINTSTRUCT
访问设备上下文句柄。 但是,可以通过 m_hDC
成员变量(其中 CPaintDC
继承自 CDC)更直接地访问句柄。
示例
请参阅 CPaintDC::m_hWnd
的示例。