想实现画动态轨迹的功能,隔很短的一段时间画一个线段
CPoint temp;
......
Sleep(50);
BOOL ret=dc->LineTo(temp);
如果线段不多,还是能够显示出动态的效果,但如果要画的
线段很多,程序就会sleep很久没有反应,请问有什么办法
是程序执行等待画下一条线的间隔中能够继续反应程序(也
就是说不使用sleep函数)
我考虑了一下多线程,好像不太可行,因为线程里一般不做
改变界面显示的工作
CPoint temp;
......
Sleep(50);
BOOL ret=dc->LineTo(temp);
如果线段不多,还是能够显示出动态的效果,但如果要画的
线段很多,程序就会sleep很久没有反应,请问有什么办法
是程序执行等待画下一条线的间隔中能够继续反应程序(也
就是说不使用sleep函数)
我考虑了一下多线程,好像不太可行,因为线程里一般不做
改变界面显示的工作
SETTIMER
KELLTIMER
定时器啊
2.在view的OnDraw函数中,根据m_step的取值,绘制一条线段。
3.在view的OnCreate函数中,调用CWnd::SetTimer设置一个50ms的定时器。
4.让view响应WM_TIMER消息,每次响应的时候,m_step++;
InvalidateRect(NULL);就行。