[Unity3D] 拖拽文件到unity standalone App

需求

Unity 打包好的程序,里面有一个坑人的功能:拖拽文件并打开它。就像这样↓


没有美术构图将就看~

实现

使用 windows api hook 这个 Unity 窗口,当文件拖入事件在这个窗口中发生时,发出事件,将拖拽进来的所有文件的路径和鼠标释放时光标在APP窗口的位置(单位:Pixel)作为事件包含的信息发送出去。
当我们有了文件路径和鼠标释放时的位置,剩下的事情就好搞了。
Cool,还没写代码就找到了解决方案:见扩展阅读 。
嗯,真香!

动画

Tips:

  1. 不要企图在Editor下也能好用,unity2018测试可以 2017就不行。
  2. 登录Administrator的用户组的用户后才能使用这个功能。
  3. 如果PC登录的用户不是管理员用户组,就算右键以管理员身份运行,拖拽功能也不凑效。

扩展阅读

  1. Unity输出PC端(Windows) 拖拽文件到app中 - 霍莉雪特 - 博客园
  2. 文中提到的工程 Bian-Sh/DragFile4unityRT
  3. Bunny83/UnityWindowsFileDrag-Drop: Adds file drag and drop support for Unity standalong builds on windows.

标签
运行时把文件拖到Unity打包的软件的窗口并获得路径
Standalone(PC) runtime 拖拽文件并打开

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Unity3D塔防开发流程 配置环境及场景搭建 编程语言:C#,略懂些许设计模式,如果不了解设计模式,BUG Mo...
    Grape_葡萄阅读 3,044评论 1 3
  • 本节介绍各种常见的浏览器事件。 鼠标事件 鼠标事件指与鼠标相关的事件,主要有以下一些。 click 事件,dblc...
    许先生__阅读 2,536评论 0 4
  • 之前写过一篇浏览器事件的相关操作和事件运行的原理——JavaScript浏览器事件解析。这一篇主要写一些常用的事件...
    faremax阅读 1,675评论 0 0
  • 极速蜗牛,讲一个关于梦想的故事。涡轮在菜园里跟大家一起过着有规律的集体生活,收割收获,播种,吃饭。小涡轮看见电视上...
    佟掌柜敲黑板阅读 416评论 0 1
  • 巧手姑娘
    PWong阅读 200评论 0 0