鸡啄米
最新评论及回复
-
4170. 流浪的纽扣:
为啥没有人评论呢2016/9/21 10:12
-
4169. 麦田:
每天坚持来看,研究生一年级加油!!!!!!!!!
谢谢博主的分享hahahehehea 于 2017-9-22 23:20:28 回复C++2016/9/18 22:58
-
4168. 失眠的孩子先看到明天:
历经千辛万苦终于做出来了。发现犯了两个错误。第一:把OnTimer添加到了CAboutDlg类下,原本应该在CExample50Dlg类下。不知道这个是什么区别。出错之后DrawWave函数显示没有被定义。第二:我把定义数组的程序放在了头文件调用程序的下方,而他原本应该放在为类定义函数,变量的那个函数里边。放在头文件调用程序下之后,显示这个数组被重复定义了。不知道为什么。。2016/9/16 16:52
-
4167. 黑色石头:
鸡啄米辛苦啦,给了我很多帮助!感谢!2016/9/13 15:54
-
4166. 老四:
我基本上看懂你写的代码,但是你GetDC 没有释放DC 内存已经溢出了。AngelEagle 于 2018-11-29 11:27:47 回复这位仁兄!请问,运行一段时间后,程序会Crash掉,在wingdi.cpp 的CBrush* CDC::SelectObject(CBrush* pBrush)函数中 ASSERT(m_hDC != NULL);出错。是不是由于CDC对象没有释放的原因呢!我在OnTimer()最后面添加了ReleaseDC(m_waveDraw.GetDC());运行时间长一点,但是Crash在afxwin32.inl
_AFXWIN_INLINE int CWnd::ReleaseDC(CDC* pDC)
{ ASSERT(::IsWindow(m_hWnd)); return ::ReleaseDC(m_hWnd, pDC->m_hDC); }
这个问题该如何解决呢?
AngelEagle 于 2018-11-29 11:29:39 回复或者说我该如何正确地RealeaseDC呢。AngelEagle 于 2018-11-29 13:00:06 回复知道如何RealeaseDC 了,在OnTimer()中 将绘制波形图的那句改成这样
//绘制波形图
CDC *pDC = this->GetDC();
DrawWave(pDC, rectPicture);
在CDialog::OnTimer(nIDEvent);后添加
ReleaseDC(pDC);
这样就OK了,中午吃饭运行一个多小时没问题,通过资源管理器查看该进程的内存情况,发现变化不大,没RealeaseDC之前内存会持续增长,我的达到10936就挂了。应该就是这样了
2016/9/13 15:48