因为我的DLL窗体碰到了一个问题。就是当主程序进行数据查询时。DLL窗体的就会冻结。只能等主程序工作完成后。才能够继续运行。而我的TIMER 里面有个过程。需要定时涮新的。这样造成了数据错误。  有个朋友说。用线程 来SHOW  DLL窗体就可以了。但是我不知道怎么来实现。我想在想要的结果就是。当程序查询数据时。我的DLL窗体还可以移动。输入。做它自己的工作。不受主程序的影响。  主程序不是我写的。我只写DLL。没法更改主程序

解决方案 »

  1.   

    dll窗体冻结,是不是因为你窗体show时,有大数量的操作,导致窗体一时无法显示
      

  2.   

       不是窗体无法显示。。比如说。现在主程序动行。呼出了我的DLL窗口。我的DLL窗体里面有个timer不停的写入某个事件。比如msgbox(...)  这些平时主程序不工作时。都是正常的。但是当主程序一进行大的工作。我的TIMER就无法用了。得等工作完成后才能使用。我就是想解决这个问题。有朋友说。如果写个多线程。不停的SHOW  DLL就可以解决这个问题。但是我不是太明白。
      

  3.   

    应该是消息阻塞引起的。因为你的time事件其实调用的是主程序的消息循环,所以主程序忙碌的时候会阻塞住。
    你最好不要用time方式来执行。
    用多线程的话,很多例子,你自己找找吧。