void CLoginDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rectClt;
GetClientRect(&rectClt);
//图像显示区域
CRect rectImage(rectClt);
rectImage.right = rectImage.left + m_LoadImage.GetWidth();
rectImage.bottom = rectImage.top + m_LoadImage.GetHeight();
//内存dc
CDC dcDraw;
dcDraw.CreateCompatibleDC(&dc);
CBitmap bitmap;
bitmap.CreateCompatibleBitmap(&dc, rectImage.Width(), rectImage.Height());
dcDraw.SelectObject(&bitmap);
Graphics myGraphics(dcDraw);
myGraphics.DrawImage(&m_LoadImage,
(int)rectImage.left,
(int)rectImage.top,
(int)rectImage.right,
(int)rectImage.bottom);
//将内存dc中的图像拷贝到屏幕上
dc.BitBlt(0, 0, rectImage.Width(), rectImage.Height(),
&dcDraw, 0, 0, SRCCOPY);
return;
}
双缓存绘图(1)
最新推荐文章于 2022-09-22 18:19:32 发布