小弟写一程序,用于仿真模拟机器运行的.在运行时,把主窗体最小化,然后,在任务栏点击主窗体,想让其显示界面出来,但不管怎么点也点不出来,没反应的,点源代码的窗体也是一样,点不代码窗体.但其代码仍在运行的,直到所有的加工计算完毕后,上述功能才能恢复.查看了一下任务管理器,CPU占用率是很高的.还有,那个主窗体的架构好像也不太理想[是老总写的框架],主窗体是一个单窗体,其它窗体是通过调用SetParent函数成为主窗体的子窗体.请问各位兄台,有何高招可以解决此问题?

解决方案 »

  1.   

    请你看如下的循环语句:
    for i=1 to 100000
    i=i+1
    next 
    这段代码在执行过程中, 就会像死掉一样, 直到忙完, 才会有时间处理其它的消息
    但如果你加进一句,如下,在循环这过程, 就会有时间处理其它消息了
    for i=1 to 100000
       i=i+1
       doevents
    next 
      

  2.   

    也就是说, 修改你的程序代码, 在所有的循环, 特别是费时较长的循环语句中间都加上命令doevents
      

  3.   

    早就有DOEVENTS,不管用.已用另外的方法解决了.