程序开始循环后点退出都停不下来,搞不好还死了是不是差什么东西?谢谢指教
for(double k=-20;k<=20.0;k+=0.1)  
{
dc.SelectObject(&pen);
dc.BeginPath();
dc.MoveTo(-32000,0);
dc.LineTo(32000,0);
dc.MoveTo(-32000,int(FunMove(-32.0,k,a,b,c)*1000)+4000);  //用蓝色画第一条波
for( t = -32.000+0.02;t<= 32.000;t+=0.01)
{
double y ;
y = int(FunMove(t,k,a,b,c)*1000)+4000;
}
dc.EndPath();
退出按钮:
void CFun1Dlg::OnButtonExit() //退出按钮
{
CDialog::OnOK();
}

解决方案 »

  1.   


    dc.SelectObject(&pen);
    dc.BeginPath();
    dc.EndPath();
    移到
    for(double k=-20;k<=20.0;k+=0.1) 
    循环外面试试。 
      

  2.   

    楼主,咋不行?
    是不是只画一条轴线呀?还是退不出来?
    如果是蓝色波画不来那时对的,因为你没有 LineTo,
    在 y = int(FunMove(t,k,a,b,c)*1000)+4000;
    下面添加:LineTo。
      

  3.   

    是退不了,一定要等图形运动结束点退出才有用我是在想如何让退出的命令插入到正在进行的循环中,让程序终止下来现在的情况是一旦程序运行起来,其他操作均无效了
    lineto  我程序里有的,这里掉了
      

  4.   

    用一全线程执行这段代码,在中间加一个:
    if(m_break)   //退出时设置为true
       break;
      

  5.   

    1.循环中有判断是否退出
    2.强制退出,如TerminateThread
      

  6.   

    你BeginPath, EndPath, 又没用它, 真是看懂~~