WEB开发网
开发学院软件开发VC Customizing-自定义拖放 阅读

Customizing-自定义拖放

 2008-04-19 20:29:06 来源:WEB开发网   
核心提示:拖放的默认实现是对大多数应用程序来说足够了,然而,Customizing-自定义拖放,许多应用程序要求这些标准改变这些标准的行为,本文将介绍怎么改变这些默认的步骤,例如不同的拖动结果,光标不同 QueryContinueDrag 终止拖动操

拖放的默认实现是对大多数应用程序来说足够了,然而,许多应用程序要求这些标准改变这些标准的行为。本文将介绍怎么改变这些默认的步骤。另外,你可以使用这个技术来建立不支持符合文档作为Drop源的应用程序。

如果你正在自定义OLE拖放行为或者你已经有了一个非OLE应用程序,你必须创建一个COleDataSource对象来包含数据。当用户开始启动一个拖放操作的时候,你的代码应该在该对象调用DoDragDrop函数而不是在其他支持拖放操作的类中调用。

另外,你可以创建一个COleDropSource对象来控制Drop和重载它的许多函数,增加对你想改变的行为类型的依赖。这个Drop源对象被传递给COleDataSource::DoDragDrop来改变这些函数的默认行为。这些不同的选项让你在你的程序中支持拖放操作有更多的弹性。关于数据源的详细信息,见Data Objects and Data Sources(OLE)

你可以重载下面的函数来自定义拖放操作:

 OnBeginDrag  在你调用DoDragDrop之后如何初始化拖动
 GiveFeedback  可视的返回,例如不同的拖动结果,光标不同
 QueryContinueDrag  终止拖动操作。这个函数让你可以检测在拖动过程中的修饰键的状态。

Tags:Customizing 定义

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接