我建立的兼容 DC ,频繁 创建和Detach() 方法后, 出现了错误, 就是当我 执行m_memBmp.Detach()
这个函数 达到 389 次的时候 就出现 兼容位图变量 m_memBmp.hObjects 为 0x00000000, 这时DC 中是一片黑色? 不知道是仕么原因? 其中 CDC m_memDCView,
CBitmap m_memBmp 是头文件中定义的变量
if(m_memDCView.m_hDC==0)
{
//CRect rctCli;
m_memDCView.CreateCompatibleDC(m_pmemDC);
m_viewWnd.GetClientRect(&rcCli2);
m_memBmp.CreateCompatibleBitmap(m_pmemDC,rcCli2W,rcCli2H);
m_memDCView.SelectObject(&m_memBmp);
m_memDCView.SetStretchBltMode(HALFTONE);
m_memDCView.StretchBlt(0,0,rcCli2W,rcCli2H,m_pmemDC,
0,0,rcCli2W,rcCli2H,SRCCOPY);
}
else
{
CRect rctCli2;
m_memDCView.Detach();
m_memBmp.Detach();
m_memDCView.CreateCompatibleDC(m_pmemDC);
m_viewWnd.GetClientRect(&rcCli2);
m_memBmp.CreateCompatibleBitmap(m_pmemDC,rcCli2W,rcCli2H);
m_memDCView.SelectObject(&m_memBmp);
---------------
m_memDCView.SetStretchBltMode(HALFTONE);
m_memDCView.StretchBlt(0,0,rcCli2W,rcCli2H,m_pmemDC,
0,0,rcCli2W,rcCli2H,SRCCOPY);
}请问一下大家 这是仕么原因, 难道 Cbitmap 对象,不能频繁的 Attach()关联资源,和 Detach()断开吗?
这个函数 达到 389 次的时候 就出现 兼容位图变量 m_memBmp.hObjects 为 0x00000000, 这时DC 中是一片黑色? 不知道是仕么原因? 其中 CDC m_memDCView,
CBitmap m_memBmp 是头文件中定义的变量
if(m_memDCView.m_hDC==0)
{
//CRect rctCli;
m_memDCView.CreateCompatibleDC(m_pmemDC);
m_viewWnd.GetClientRect(&rcCli2);
m_memBmp.CreateCompatibleBitmap(m_pmemDC,rcCli2W,rcCli2H);
m_memDCView.SelectObject(&m_memBmp);
m_memDCView.SetStretchBltMode(HALFTONE);
m_memDCView.StretchBlt(0,0,rcCli2W,rcCli2H,m_pmemDC,
0,0,rcCli2W,rcCli2H,SRCCOPY);
}
else
{
CRect rctCli2;
m_memDCView.Detach();
m_memBmp.Detach();
m_memDCView.CreateCompatibleDC(m_pmemDC);
m_viewWnd.GetClientRect(&rcCli2);
m_memBmp.CreateCompatibleBitmap(m_pmemDC,rcCli2W,rcCli2H);
m_memDCView.SelectObject(&m_memBmp);
---------------
m_memDCView.SetStretchBltMode(HALFTONE);
m_memDCView.StretchBlt(0,0,rcCli2W,rcCli2H,m_pmemDC,
0,0,rcCli2W,rcCli2H,SRCCOPY);
}请问一下大家 这是仕么原因, 难道 Cbitmap 对象,不能频繁的 Attach()关联资源,和 Detach()断开吗?
解决方案 »
- 超级难的问题---关于排列组合式最优化的算法!!!!
- 使用MFC作为共享的DLL ,使用MFC作为静态链接库 二者有何区别!
- 关于DDRAW下的例子OverlayAnimate
- 我想在客户区创建控件,然后添加消息处理函数,请问该怎么办呢?
- 问个变量存储的问题
- 基于对话框的程序一启动,就全屏显示?
- 我用CFtpConnection的GetFile方法下载一个文件,遇到了一个很奇怪的问题?
- 不好意思,提一个傻帽型的问题.
- 求vc++技术内幕第四版配套光盘程序[email protected]
- 模态对话框隐藏
- 关于IOCP(完成端口):在使用postqueuedcompletionstatus函数退出完成端口之前需要关闭套接字吗?
- MFC中怎么设置与控件关联的变量的小数点位数?
把 Detach() 返回的 object 删除。
也就是说 在Cbitmap 对象每次 CreateCompatibleBitmap()方法之前要 执行DeleteObject();方法?