我的情况是:
----------------------------------
用MFC做一个ActiveX控件。 空件中有个自定义类 CProcessBase 的实例 m_pProcessor。该类包含了一些方法,对控件实时采集的数据进行分析处理。等处理完了后,应该告诉控件去触发一个自定义 Event,好让使用控件的Container得到处理后的数据。整个过程不断循环。
我的问题是:
----------------------------------
如何让m_pProcessor告诉这个控件去触发一个Event呢?换句话说,控件如何知道它所包含的这个m_pProcessor完成了数据的分析处理工作呢?是不是要使用SendMessage之类的?
我的希望是:
----------------------------------
请大家指点,谢谢。

解决方案 »

  1.   

    你的问题可以简化 ACTIVEX控件和它内部一个类对象交互的方法可以有很多种,我只是说我此刻能想到的
    1.正如你所说SendMessage,PostMessage,根据你的需求使用
    2.callback
    3.建立一个队列(维护它们交互的数据),可以比作一个水缸
      自定义类 CProcessBase 向水缸里 倒水
      ACTIVEX控件 从水缸里取水
      需要注意的就是同步问题,缸里的水没了怎么办,满了怎么办....如果时间允许,推荐第三种,不仅效率高,对我们自己开发人员来说也是挑战,有趣
      

  2.   

    谢谢loverx(烟花)的答复。有可能提供一些如何使用队列的资料嘛?麻烦您了。
      

  3.   

    容器可以去触发事件,你可以用连接点。只要让你的m_pProcessor实例维护一个容器的指针就可以了,那么你就可以类似的m_pProcessor->m_Container->FireEvent.........
    不需要那么麻烦,虽然结贴了,但我还是回你一个。