MFC中通地GDI+来画对话框背景,缩放时有闪烁怎么解决?
我在MFC中通地GDI+来画对话框背景,具体是这样的:BOOLCUserClientDlg::OnEraseBkgnd(CDC*pDC){CStringtemp=_T("...
我在MFC中通地GDI+来画对话框背景,具体是这样的:
BOOL CUserClientDlg::OnEraseBkgnd(CDC* pDC)
{
CString temp = _T("res\\bg.jpg");
Gdiplus::Graphics graphics(pDC->m_hDC);
Gdiplus::Image * pBg = NULL;
pBg = Gdiplus::Image::FromFile( temp );
if ( pBg->GetLastStatus() == Gdiplus::Ok )
{
graphics.DrawImage( pBg, 0, 0, 1280, 1024 );
delete pBg;
return TRUE;
}
else
{
delete pBg;
return CDialog::OnEraseBkgnd(pDC);
}
return CDialogEx::OnEraseBkgnd(pDC);
}
但是对话框在缩放时背景闪烁比较严重,边缘有黑边闪过,是怎么回事? 展开
BOOL CUserClientDlg::OnEraseBkgnd(CDC* pDC)
{
CString temp = _T("res\\bg.jpg");
Gdiplus::Graphics graphics(pDC->m_hDC);
Gdiplus::Image * pBg = NULL;
pBg = Gdiplus::Image::FromFile( temp );
if ( pBg->GetLastStatus() == Gdiplus::Ok )
{
graphics.DrawImage( pBg, 0, 0, 1280, 1024 );
delete pBg;
return TRUE;
}
else
{
delete pBg;
return CDialog::OnEraseBkgnd(pDC);
}
return CDialogEx::OnEraseBkgnd(pDC);
}
但是对话框在缩放时背景闪烁比较严重,边缘有黑边闪过,是怎么回事? 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询