我想把鼠标拖动的图像区域进行剪切和拷贝,不知该怎么实现啊?大家有没有好的建议或是源程序可供参考呢?在这里先谢谢大家了!!!!

解决方案 »

  1.   

    请问高人:DrawCli Sample是个函数么?具体怎么使用啊?我对这个东东不是很熟悉,能具体的
    说说么?谢谢了!!!
      

  2.   

    CRect Oldrect;
    GetClipCursor(&Oldrect);//用于保存原来的鼠标区域

    CRect rect;
    GetWindowRect(&rect);   //获取窗体的区域
        ClipCursor(&rect);      //设置鼠标的活动范围为窗体内 AfxMessageBox("");    ClipCursor(&Oldrect);   //恢复原来的鼠标区域
      

  3.   

    去MSDN搜索
    MSDN在线版地址 msdn.microsoft.com/library
      

  4.   

    以下是从msdn中复制过来的DRAWCLI 示例是具有可视化编辑容器支持的面向对象的绘图应用程序。在 MFC ActiveX 容器示例(CONTAINER、OCLIENT 和 DRAWCLI)中,此示例最好地阐释了 ActiveX 容器支持与特定于应用程序的功能(在此示例中是绘图功能)的集成。此外,DRAWCLI 还说明如何在其“shape”和“drawing tool”类(CDrawObj 和 CDrawTool)的设计中有效使用 C++ 多态性。生成并运行示例
    生成并运行 DRAWCLI 示例 打开解决方案 drawcli.sln。 
    在“生成”菜单上单击“生成解决方案”。 
    从项目的 Debug 目录中,打开并运行 DRAWCLI 应用程序。 
    DRAWCLI 的 Windows 徽标功能
    DRAWCLI 还阐释 Windows 徽标遵从性。所有 MFC 应用程序都满足 Windows 徽标的一些要求:是 Win32 可执行文件、支持长文件名、支持 UNC 路径名以及使用系统颜色和公制。DRAWCLI 通过包括以下功能满足 Windows 徽标的其余要求。 ActiveX 支持。DRAWCLI 是活动容器,它以复合文件格式存储其文件,支持就地激活,并且作为拖放操作的放置目标。 
    MAPI 支持。DRAWCLI 在其“File”菜单上提供“Send as Mail”消息,使用户可以将文档作为邮件附件发送。 
    符合外壳程序规则,包括大小图标的注册,使用系统注册表而非 .ini 文件,以及具有安装和卸载程序。对于后者,DRAWCLI 包含一个与 InstallSHIELD(Stirling Software 的用于创建安装和卸载程序的工具包)兼容的脚本。 
    DRAWCLI 还满足 Windows 应用程序的以下建议。 使用选项卡式属性页。 
    使用 Windows 公共控件。 
    显示快捷菜单以响应鼠标右键单击。 
    将摘要信息与其文档一起存储。 
    DRAWCLI 的用户界面类似于其他面向对象的绘图程序的用户界面。集成活动容器支持与特定于应用程序的功能
    DRAWCLI 示例最初是使用 MFC 类开发的独立的绘图应用程序。然后该独立的 DRAWCLI 版本与使用应用程序向导的 ActiveX 容器功能创建的 DRAWCLI 的第二个主干版本相集成。这一过程类似于 ActiveX 可视化编辑服务器将服务器支持添加到 SCRIBBLE 的方式。MFC ActiveX 容器应用程序的设计在本质上应是相同的,无论是将 ActiveX 功能添加到现有的独立 MFC(文档/视图)应用程序,还是从应用程序向导生成的 ActiveX 容器应用程序开始。以下是对 DRAWCLI 如何被划分成特定于应用程序的代码和特定于 ActiveX 容器的代码的简短说明。 CDrawObj 类(在 Drawobj.cpp 中实现)是派生的“shape”类的基类。该基类处理形状的命中测试、形状的移动和形状的大小调整。通过使用多态性,DRAWCLI 可以通过 CDrawObj 的接口与不同类的对象进行交互。 
    CDrawRect 类和 CDrawPoly 类是从 CDrawObj 派生的。CDrawRect 用于绘制矩形、圆角矩形、椭圆和直线。CDrawPoly 用于绘制多边形。这两个类独立于 DRAWCLI 的 ActiveX 容器功能。 
    CDrawOleObj 类也是从 CDrawObj 派生的,用于表示嵌入的对象。CDrawOleObj 将所有特定于 ActiveX 的操作委托给包含的 CDrawItem 对象(参阅下面的描述)。对于一般形状操作,对嵌入的对象的处理类似于对 DRAWCLI 中其他形状对象的处理,因为 CDrawOleObj 是从 CDrawObj 派生的。 
    从 COleClientItem 派生的 CDrawItem 类处理嵌入对象的所有特定于 ActiveX 的行为。CDrawItem 的实现类似于 CONTAINER 和 OCLIENT 示例中 COleClientItem 派生类的实现。 
    CDrawDoc 类是从 COleDocument 派生的。COleDocument 对象维护 CDrawObj 对象的 CObList。CDrawDoc 将几个特定于 ActiveX 容器的菜单命令(例如“Edit”->“Paste”、“Paste Link”和“Link”)委托给基类 COleDocument。 
    CDrawView 类是从 CScrollView 派生的。CDrawView 的特定于 ActiveX 的实现类似于 CONTAIN 和 OCLIENT 示例中视图类的实现。大量的 DRAWCLI 的特定于绘图的用户界面也是在 CDrawView 中实现的。