RE: Vista Aero
Hi, David
below is a snippet of my code.about drawing scrollbar.
note: it can be displayed normally unless Aero in vista is enabled.
thanks once again and hope response.
//// a snippet of my code
void CMyScrollBar::OnPaint()
{
CPaintDC dc(this);
// draw scrollbar when receive the on_paint message
DrawScrollBarDC(&dc);
}
//// draw scrollbar
void CMyScrollBar::DrawScrollBarDC(CDC *pDC)
{
CRect clientRect;
CDC memDC;
CBitmap tempBmp,*oldBmp;
GetClientRect(&clientRect);
if(clientRect.Width()<=0) return;
memDC.CreateCompatibleDC(pDC);
tempBmp.CreateCompatibleBitmap(pDC,rectClient.Width(),rectClient.Height());
oldBmp = memDC.SelectObject(&tempBmp);
memDC.SetStretchBltMode(COLORONCOLOR);
memDC.FillSolidRect(rectClient,RGB(255,0,0));
// draw the scrollbar image
if(m_bReDraw) DrawScrollBar(&memDC);
// i had copied the memDC to clipboard from here
// and then paste to word document, the image is right
// so why bitBlt can't blit the image normally?
pDC->BitBlt(0,0,
rectClient.Width(),rectClient.Height(),&memDC,0,0,SRCCOPY);
// dw is 0 anyway
DWORD dw = GetLastError();
memDC.SelectObject(oldBmp);
tempBmp.DeleteObject();
memDC.DeleteDC();
}
"John" wrote:
hi guys,
i developed a app using vs2005 and mfc8.0,
but meet various questions in vista when Aero is enabled.
for example: the background display desktop 's after switch,
some controls cant display normally, and so on.
what should i notice when using mfc in vista
thanks in advance