拖放:自定义

拖放功能的默认实现。大多数应用程序即可。 但是,一些应用程序可能需要此标准行为更改。 本文说明的必要步骤更改这些默认值。 另外,可以使用此技术建立不支持复合文档作为放置源的应用程序。

如果自定义标准 OLE 拖放行为,或者存在非 OLE 应用程序,必须创建一个 COleDataSource 对象包含的数据。 当用户启动拖放操作时,应从代码调用此对象的 DoDragDrop 函数而非从其他类支持拖放操作。

或者,可以创建一个 COleDropSource 对象控制放置并根据要更改行为类型重写某些函数。 此放置源对象传递给 COleDataSource::DoDragDrop 函数更改这些默认行为。 这些不同选项允许在如何的灵活性支持在应用程序中执行拖放操作。 有关数据源的更多信息,请参见知识库文章 数据对象与数据源 (OLE)

可以重写函数自定义拖放操作:

重写

自定义:

OnBeginDrag

当你调用DoDragDrop后,抓取怎么实例化。

GiveFeedback

可视反馈,例如光标外观,此外放置结果。

QueryContinueDrag

拖放操作终止。 此函数使您在拖动操作期间检查键修改状态。

请参见

参考

COleDropSource 类

COleDataSource 类

概念

拖放 (OLE)