Вставить картинку в однодокументное приложение
Добавлено: 25 июл 2009, 23:26
Доброе время суток!
В однодокументное приложение VC++6.0 пытаюсь вставить картинку *.bmp:
Подскажите пожалуйста, что здесь не так?
В однодокументное приложение VC++6.0 пытаюсь вставить картинку *.bmp:
Код: Выделить всё
CMy1View::CMy1View()
{
// TODO: add construction code here
m_pdcMemory = new CDC;
m_pBitmap = new CBitmap;
}
CMy1View::~CMy1View()
{
delete m_pdcMemory;
delete m_pBitmap;
}
........................................
void CMy1View::OnDraw(CDC* pDC)
{
CMy1Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
pDC->SetStretchBltMode(COLORONCOLOR);
pDC->StretchBlt(20, -20, m_sizeDest.cx, -m_sizeDest.cy,
m_pdcMemory, 0, 0,
m_sizeSource.cx, m_sizeSource.cy, SRCCOPY);
}
void CMy1View::OnInitialUpdate()
{
CView::OnInitialUpdate();
// TODO: Add your specialized code here and/or call the base class
BITMAP bm;
if(m_pdcMemory->GetSafeHdc() == NULL)
{
CClientDC dc(this);
OnPrepareDC(&dc);
m_pBitmap->LoadBitmap(IDB_GOLD);
m_pdcMemory->CreateCompatibleDC(&dc);
m_pdcMemory->SelectObject(m_pBitmap);
m_pBitmap->GetObject(sizeof(bm), &bm);
m_sizeSource.cx = bm.bmWidth;
m_sizeSource.cy = bm.bmHeight;
m_sizeDest = m_sizeSource;
dc.DPtoLP(&m_sizeDest);
}
}