三九宝宝网宝宝绘画儿童画

MFC动态画图

02月12日 编辑 39baobao.com

CWnd *pWnd = GetDlgItem(IDC_DIAMETER);是获取控件IDC_DIAMETER的窗口对象指针,之后的画图是在控件IDC_DIAMETER的窗口里面画的,之后调用 pWnd->Invalidate();是使得控件IDC_DIAMETER窗口客户区域无效引起重绘。如果想通过Invalidate()函数在窗口绘画,那么先在某处调用Invalidate()函数,然后再在对话框的OnPaint函数这画图,显然在你的OnPaint函数里面没有画图的代码。而且为什么在OnPaint函数里面启动定时器,定时器启动可以在别的地方启动,启动后除非主动把他关掉,他就会不断起作用了。要定时绘图,可以在对话框初始化函数里面启动定时器,在定时器函数里面调用Invalidate()函数,这就相当于定时调用OnPaint函数,然后把画图代码放在OnPaint函数里面就可以了。

推荐阅读
图文推荐