CDC* pWinDC = this->GetDC(); m_memDC.CreateCompatibleDC(pWinDC); m_memBmp.LoadBitmap(IDB_BITMAP5

CDC* pWinDC = this->GetDC();
m_memDC.CreateCompatibleDC(pWinDC);
m_memBmp.LoadBitmap(IDB_BITMAP5);
m_memDC.SelectObject(&m_memBmp);
m_memBmp.GetBitmap(&m_bitMap);
这段代码如何改,才能让图片不会覆盖整个窗口,保持原图大小不变

你需要创建一个容器来承接这个bmp,比如CStatic等.
创建DC时通过CStatic获取即可。追问

您能说的具体点吗,我是菜鸟,不懂

追答

在对话框中拖一个Static控件,做好变量映射后SetBitmap

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-23
跟上面代码无关,你是用了下面的代码用了pDC->StretchBlt()这样就全屏了,用函数BitBlt()这个就是画原图的函数,查看MSDN,或者上网搜索下
。新手
第2个回答  2011-08-22
这个是原图大小啊追问

出来的图不是原图,被放大或者缩小了

...= this->GetDC(); memdc.CreateCompatibleDC(pDC); 这句话是什么意...
memdc.CreateCompatibleDC(pDC); 创建与pDC的兼容的内存DC(利用文件映射机制,模拟的内存DC,速度快,相当于直接在内存中操作DC)

...CDC*)GetDC(hwnd);memDC.CreateCompatibleDC(pDC);中断
pDC是不是为NULL

CDC *pDC=GetDC();pDC->TextOut();ReleaseDC(pDC);是实现什么功能_百度...
简单地说,GetDC()可以获取当前显示设备的一些属性,这些属性放在一个结构里,pDC指向该结构.pDC->TextOut就是使用该结构的显示方面的属性来显示一段字符串.ReleaseDC(pDC);显示的工作做完了,释放这个结构.

MFC关于GetDC()的问题??
GetDC()是获取当前句柄的DC再MFC中师获取他的CDC的。然后使用这个DC操作图形界面。。

哪个知道华容道的秘籍.???
GetClientRect(hwnd,&rect); hdc=GetDC(hwnd); memdc=CreateCompatibleDC(hdc); hbit=CreateCompatibleBitmap(hdc,rect.right,rect.bottom); SelectObject(memdc,hbit); hbrush = (HBRUSH) GetStockObject(WHITE_BRUSH); SelectObject(memdc, hbrush); \/\/hpen = (HPEN) GetStockObject(BLACK_PEN); \/\/Select...

华容道自动解题思想
GetClientRect(hwnd,&rect);hdc=GetDC(hwnd);memdc=CreateCompatibleDC(hdc);hbit=CreateCompatibleBitmap(hdc,rect.right,rect.bottom);SelectObject(memdc,hbit);hbrush = (HBRUSH) GetStockObject(WHITE_BRUSH);SelectObject(memdc, hbrush);\/\/hpen = (HPEN) GetStockObject(BLACK_PEN);\/\/SelectObject(memdc...

在dll中怎样获得主应用程序句柄
1.做DLL尽量不要用MFC,如果包含了MFC才能用CDC 类,所以建议使用HDC这是原始句柄,否则在DLL内用CDC这类会使DLL很大.传递句柄:pDC->m_hDC 2.窗口句柄用HWND,直接传入this->m_hWnd,没必要使用CWnd类 事实上不用传DC的,直接传HWND后,使用以下函数得到HDC即可:HDC hDestDC = ::GetDC(HWND hWnd)...

如何用MFC编写一个程序,获得整个屏幕的截图并保存为bmp格式?_百度...
代码 大概就是这样 有几个关键函数仔细一下,要是要完整代码呢留言 CDC memDC;CBitmap memBitmap,*pOldBitmap;CWindowDC dc(GetDesktopWindow());memDC.CreateCompatibleDC(&dc);int nWidth,nHeight;\/* nWidth=GetSystemMetrics(SM_CXSCREEN);nHeight=GetSystemMetrics(SM_CYSCREEN);*\/ CRect rect;G...

C#读一张图做窗口背景,怎么做(采纳给高分)
void CTransDlg::SetupRegion(CDC *pDC \/*对话框窗口DC*\/,UINT BackBitmapID \/*背景位图资源ID*\/,UINT MaskBitmapID \/*区域处理位图资源ID*\/,COLORREF TransColor \/*透明颜色值*\/){ CDC memDC;CBitmap cBitmap;CBitmap* pOldMemBmp = NULL;COL...

求助:VC如何实现图片的放大和缩小?
HALFTONE); \/\/将位图选进设备场景中 CDC memdc; memdc.CreateCompatibleDC( &dc ); CBitmap* pOldBmp= memdc.SelectObject(&m_bmpImage); \/\/获得位图参数 BITMAP bmp; m_bmpImage.GetBitmap(&bmp); \/\/开始缩放 switch(m_nStrechType) { case...

相似回答