gpt4 book ai didi

c++ - COleControl 的 OnClose 被覆盖,但从未被解雇

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:23:52 27 4
gpt4 key购买 nike

我正在使用 MFC 为网页编写 ActiveX 控件。当资源管理器关闭时,需要在销毁控件的主窗口之前释放一些资源。我做了一些搜索,发现重写的 COleControl::OnClose(DWORD dwSaveOption) 函数应该是执行释放工作的好地方。所以我对我的代码做了以下更改:

  1. 将以下行添加到头文件中我的控件声明中:

    virtual void OnClose(DWORD dwSaveOption);
  2. 将以下行添加到我的控件的实现文件中:

    void MyControl::OnClose(DWORD dwSaveOption){    // some code that do relesing job    COleControl::OnClose(dwSaveOption);}

我认为当关闭资源管理器时,应该执行 MyControl::OnClose,但实际上没有。我是否遗漏了正确覆盖函数的任何内容,或者 OnClose 函数不是执行此操作的正确位置?

最佳答案

我个人重写 COleControl::OnDestroy() 进行清理。您是否缺少某种事件接收器注册调用来启用关闭?还是调度图条目?

关于c++ - COleControl 的 OnClose 被覆盖,但从未被解雇,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13640291/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com