我已经写了C++编写的使用Qt 4.x的一个小文件传输应用程序...,在登录到服务器,显示了用户在服务器上的可用文件的列表,并允许用户上传或下载文件。Qt 4.x:如何实现拖放到桌面或文件夹?
这一切工作正常;您甚至可以从桌面(或从打开的文件夹)拖入文件,并且当您将文件图标拖放到服务器文件列表视图中时,被拖放的文件将上传到服务器。
现在我有一个相反的动作要求,以及...我的用户希望能够将文件从服务器的文件列表视图,并到桌面上,或进入打开的文件夹窗口,并将该文件下载到该位置。
这似乎是一个合理的要求,但我不知道如何实现它。有没有办法让Qt应用程序找到与发生“丢弃事件”的地方相对应的目录,当图标被放到桌面或打开的文件夹窗口中时?理想情况下,这将是基于Qt的平台中立机制,但如果不存在,那么针对MacOS/X和Windows(XP或更高版本)的平台特定机制就足够了。
任何想法?
我试图做到这一点使用Qt 4.2半晌回,并没有找到一种方法,做正确。但也许有人可以想出一个解决方案呢? – BastiBen 2010-04-28 12:36:10
看到我的回应,你不能轻易跨平台去做。例如,除非将文件下载到临时目录,然后让Windows将其复制到正确的位置,否则Windows需要外壳扩展。 – 2010-04-29 14:10:12
@Jeremy Friesner 你能解决这个问题而不会冻结你的gui吗? – atamanroman 2011-11-08 16:13:27