我想将一张图片在一个对话框背景范围内用平铺、拉伸、居中、缩放等不同的方式显示,并将该对话框的新背景保存为另一张图片,我现在的作法是: HDC hMemDC;
HBITMAP hBitmap, hOldBitmap;
        HBITMAP  hBmp;
        CDC * pDC = GetDC();        CRect rc;
        GetClientRect(rc);        hBmp = (HBITMAP)LoadImage(NULL, FileName, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
CBitmap tempmap;
tempmap.Attach(hBmp); //载入原始图片        pDC->FillRect(CRect(0,0,rc.Width(), rc.Height()), &brush);            //平铺效果 hMemDC = CreateCompatibleDC(pDC->m_hDC); hBitmap = CreateCompatibleBitmap(pDC->m_hDC,  rc.Width(),  rc.Height());
hOldBitmap = (HBITMAP)SelectObject(hMemDC, hBitmap); BitBlt(hMemDC, 0, 0, rc.Width(), rc.Height(), pDC->m_hDC, 0, 0, SRCCOPY);
hBitmap = (HBITMAP)SelectObject(hMemDC,   hOldBitmap);现在的问题是:我是用截屏的方法生成的图片,当该对话框被其他窗口挡住的时候,生成的图片会有其他窗口。我想问的是还有没有其他方法来实现这个功能?