CWnd::BeginPaint
CWnd 用于绘制准备并用有关绘制的信息来加载 PAINTSTRUCT 数据结构。
CDC* BeginPaint(
LPPAINTSTRUCT lpPaint
);
参数
- lpPaint
指向 PAINTSTRUCT 是获取绘图信息的结构。
返回值
标识 CWnd的设备上下文。 指针可能是瞬态的,不应存储超过 EndPaint的范围。
备注
绘制结构包含具有最小矩形完全封闭更新区域和标志指定的一种 RECT 数据结构是否清除了背景。
更新区域由 无效,InvalidateRect设置,也 InvalidateRgn 成员函数和由系统,在该行的大小后,移动,创建,滚动或执行影响工作区的其他操作。 如果更新区域中清除标记为,BeginPaint 发送 WM_ONERASEBKGND 信息。
不要调用除响应 WM_PAINT 消息的 BeginPaint 成员函数。 每个调用 BeginPaint 函数必须具有一个匹配项调用 EndPaint 成员函数的成员。 如果插入符号位于要绘制的区域,BeginPaint 成员函数自动隐藏插入符号阻止其清除。
示例
// Use BeginPaint and EndPaint when responding to WM_PAINT message
// An alternative method is to use CPaintDC in place of
// BeginPaint and EndPaint
void CMdiView::OnPaint()
{
PAINTSTRUCT ps;
CDC* pDC = BeginPaint(&ps);
pDC->Rectangle(CRect(0, 0, 100, 100));
EndPaint(&ps);
// Do not call CView::OnPaint() for painting messages
}
要求
Header: afxwin.h