求教关于显示位图的问题 下载源码:http://www.codeguru.com/doc_view/zoom_scale.zip将OnDraw(CDC* pDC)改成你的就可以了。你要的就是CZoomView类 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if (!pDC->IsPrinting()) { // draw to offscreen bitmap for fast looking repaints if (dc.CreateCompatibleDC(pDC)) { if (bitmap.CreateCompatibleBitmap(pDC, rect.Width(), rect.Height())) { OnPrepareDC(&dc, NULL); pDrawDC = &dc; // offset origin more because bitmap is just piece of the whole drawing dc.OffsetViewportOrg(-rect.left, -rect.top); pOldBitmap = dc.SelectObject(&bitmap); dc.SetBrushOrg(rect.left % 8, rect.top % 8); // might as well clip to the same rectangle dc.IntersectClipRect(client); } } } // paint background CBrush brush; if (!brush.CreateSolidBrush(pDoc->GetPaperColor())) return; brush.UnrealizeObject(); pDrawDC->FillRect(client, &brush); if (!pDC->IsPrinting() && m_bGrid) DrawGrid(pDrawDC); pDoc->Draw(pDrawDC, this); if (pDrawDC != pDC) { pDC->SetViewportOrg(0, 0); pDC->SetWindowOrg(0,0); pDC->SetMapMode(MM_TEXT); dc.SetViewportOrg(0, 0); dc.SetWindowOrg(0,0); dc.SetMapMode(MM_TEXT); pDC->BitBlt(rect.left, rect.top, rect.Width(), rect.Height(), &dc, 0, 0, SRCCOPY); dc.SelectObject(pOldBitmap); } 孙鑫 VC++ 深入浅出 第一章的编程问题 如何在vc对话框中实现滚动字幕 加入了异常处理,程序运行怎么反而变快了? 用IE控件打印预览的问题 database 问题 急!!谢谢 error C2664,各位高手进来看看,帮帮小弟,小弟在此道谢了!!! 如果实现类EXCEL的多SHEET的界面? 在DLL中调用另一个DLL???? 如何得到应用程序的实例句柄? 实时监控怎么样编写 怎样用vc sdk实现按钮大小随窗口大小的变化而变化 ado,请问大家
{
// draw to offscreen bitmap for fast looking repaints
if (dc.CreateCompatibleDC(pDC))
{
if (bitmap.CreateCompatibleBitmap(pDC, rect.Width(), rect.Height()))
{
OnPrepareDC(&dc, NULL);
pDrawDC = &dc; // offset origin more because bitmap is just piece of the whole drawing
dc.OffsetViewportOrg(-rect.left, -rect.top);
pOldBitmap = dc.SelectObject(&bitmap);
dc.SetBrushOrg(rect.left % 8, rect.top % 8); // might as well clip to the same rectangle
dc.IntersectClipRect(client);
}
}
} // paint background
CBrush brush;
if (!brush.CreateSolidBrush(pDoc->GetPaperColor()))
return; brush.UnrealizeObject();
pDrawDC->FillRect(client, &brush); if (!pDC->IsPrinting() && m_bGrid)
DrawGrid(pDrawDC); pDoc->Draw(pDrawDC, this); if (pDrawDC != pDC)
{
pDC->SetViewportOrg(0, 0);
pDC->SetWindowOrg(0,0);
pDC->SetMapMode(MM_TEXT);
dc.SetViewportOrg(0, 0);
dc.SetWindowOrg(0,0);
dc.SetMapMode(MM_TEXT);
pDC->BitBlt(rect.left, rect.top, rect.Width(), rect.Height(),
&dc, 0, 0, SRCCOPY);
dc.SelectObject(pOldBitmap);
}