zoukankan      html  css  js  c++  java
  • 实现拖拽文件到单文档应用程序的View中

          很多软件都具备将文档直接拖拽到软件界面上,然后软件自动读取、解析文档,最后在界面上呈现文档内容。这里主要就是响应一个WM_DropFiles消息。下面就在一个单文档应用程序里面实现该功能。

    第一步:在View的头文件添加WM_DropFiles消息响应函数声明:

    afx_msg void OnDropFiles(HDROP hDropInfo);

    第二步:在view的cpp文件中添加WM_DropFiles的消息映射:

    ON_WM_DROPFILES()

    第三步:在view的cpp文件中实现OnDropFiles消息响应函数:  

     void CTestView::OnDropFiles(HDROP hDropInfo)
    {
          CScrollView::OnDropFiles(hDropInfo);
          TCHAR filePath[1024] = {0};
               //获取拖拽的文件的路径
          DragQueryFile(hDropInfo , 0 , (LPTSTR)filePath ,1024);
    
              CString strFilePath = filePath;
    
              //TODO:有了文件路径后,就可以去读取文件,然后解析文件、呈现内容了
    }

    第四步:还需要在OnInitialUpdate函数中调用DragAcceptFiles(TRUE)方法:

    void CTestView:: OnInitialUpdate ()
    {
           DragAcceptFiles(TRUE);
    }
  • 相关阅读:
    oracle 编译无效对象
    nginx配置监控
    Docker底层技术
    KVM入门
    maven 忽略checkstyle
    Java 使用 UnixSocket 调用 Docker API
    unix-socket-implementation-for-java
    NVIDIA Physix Unity3D
    Mobile Prototype Dev Res Collection(Unity原型开发资源储备)
    Unity抗锯齿
  • 原文地址:https://www.cnblogs.com/RascallySnake/p/2939122.html
Copyright © 2011-2022 走看看