救我!有关控件的外观
我正在做一个ATL的控件准备插入到powerpoint中,本想如calender control在edit状态和非edit状态都可见到其外观。但是我的控件是一个window,如鼠标点到外面,即非edit状态时,我的控件收到WM_DESTROY,所以我准备重载OnDraw(),即向自己用位图来画控件的外观。我的代码是这样
HRESULT CMyObj::OnDraw(ATL_DRAWINFO& di)
{
RECT rc = *(RECT*)di.prcBounds;
HDC hdc = di.hdcDraw;
HBRUSH br = CreateSolidBrush(RGB(0xff, 0xc0, 0xc0));
FillRect(hdc, &rc, br);
DeleteObject(br);
HDC memDC = CreateCompatibleDC ( hdc );
HBITMAP hBmp = LoadBitmap(_Module.m_hInstResource, MAKEINTRESOURCE(IDB_BITMAP));
HBITMAP hOldBmp = (HBITMAP)SelectObject ( memDC, hBmp );
StretchBlt(hdc,rc.left,rc.top, rc.right, rc.bottom,memDC,0,0,48,48,SRCCOPY);
if(hOldBmp)
SelectObject(memDC, hOldBmp);
DeleteObject(hBmp);
DeleteDC(memDC);
return S_OK;
}但是在非edit状态时不能显示位图,各位高人请救救我!!