在 MFC 中,COleDropTarget::Revoke 是 COleDropTarget 类的公共方法,用于取消窗口的 OLE 拖放目标注册。通过调用 Revoke 方法,可以停止窗口接受和处理拖放操作。

以下是 COleDropTarget::Revoke 方法的一般形式:
BOOL COleDropTarget::Revoke();

该方法没有参数,返回一个 BOOL 值,表示撤销注册是否成功。如果撤销成功,返回 TRUE;否则,返回 FALSE。

通常,在窗口即将被销毁的时候,你会调用 COleDropTarget::Revoke 方法,以确保在窗口销毁之前取消拖放目标的注册。

以下是一个简单的示例:
class CMyDialog : public CDialog
{
    COleDropTarget m_dropTarget;

public:
    CMyDialog(CWnd* pParent = nullptr)
        : CDialog(IDD_MYDIALOG, pParent)
    {
        // 注册窗口为拖放目标
        m_dropTarget.Register(this);
    }

    ~CMyDialog()
    {
        // 在窗口销毁前撤销拖放目标的注册
        m_dropTarget.Revoke();
    }

    // 其他类成员和消息处理函数...
};

在这个例子中,CMyDialog 对象在销毁时会调用 COleDropTarget::Revoke 方法,以确保在销毁之前取消拖放目标的注册。


转载请注明出处:http://www.zyzy.cn/article/detail/21400/MFC/COleDropTarget