求一个MFC单文档图像显示程序
RT,只要单文档下能打开和保存一张图片,然后能用画刷,这样就好了,用opencv写的最好。。求发工程文件...
RT,只要单文档下能打开和保存一张图片,然后能用画刷,这样就好了,用opencv写的最好。。求发工程文件
展开
1个回答
展开全部
这是双缓冲绘图。
双缓冲绘图步骤:
1、加载图像
代码中是用的HBITMAP方式,就是下面这段。(还可以是GDI+等等)
HBITMAP hBitmap= (HBITMAP)LoadImage(NULL,BmpName,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE); // ???
m_bitmap.Detach(); // ???
m_bitmap.Attach(hBitmap); // ???
2、创建内存绘图DC
CDC dcImage;
BOOL flag=dcImage.CreateCompatibleDC(pDC); 其中的dcImage就是内存DC。
3、将图像一次绘制在内存DC上。
dcImage.SelectObject(m_bitmap);
2、将内存DC的图像按尺寸绘制在窗口中。
pDC->BitBlt(0,0,bitmap.bmWidth,bitmap.bmHeight,&dcImage,0,0,SRCCOPY);
建议你网上搜搜双缓冲绘图的实现。
双缓冲绘图步骤:
1、加载图像
代码中是用的HBITMAP方式,就是下面这段。(还可以是GDI+等等)
HBITMAP hBitmap= (HBITMAP)LoadImage(NULL,BmpName,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE); // ???
m_bitmap.Detach(); // ???
m_bitmap.Attach(hBitmap); // ???
2、创建内存绘图DC
CDC dcImage;
BOOL flag=dcImage.CreateCompatibleDC(pDC); 其中的dcImage就是内存DC。
3、将图像一次绘制在内存DC上。
dcImage.SelectObject(m_bitmap);
2、将内存DC的图像按尺寸绘制在窗口中。
pDC->BitBlt(0,0,bitmap.bmWidth,bitmap.bmHeight,&dcImage,0,0,SRCCOPY);
建议你网上搜搜双缓冲绘图的实现。
追问
实在是看不懂。。。说实话我第一个程序还是个对话框计算器,然后这是第二个程序,view和doc的关系还不是很明白,就让写这个头都大了。。只想要个源程序看看实现。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询