YGYL 发表于 2023-6-4 00:59:30

2023.11.6更新】【独立控件】分别支持不同的【多文件拖放】WinAPI_DragQueryFileEX

本帖最后由 YGYL 于 2023-11-6 22:10 编辑

2023.11.6更新了更完整的(演示)程序,拖放区加到了5个,并给出了更具体的提示消息。
这种功能在某些分类整理程序上是非常有用的……

================
YGYL:通常而言, autoit AU3文件拖放的支持就不完美
AU3内置的 窗口$WS_EX_ACCEPTFILES,控件$GUI_DROPACCEPTED,然后@GUI_DropId区分发生的控件,但@GUI_DragFile 不支持多文件,只认第一个文件!而且拖进窗口就是拖放光标,没有区分控件显示。
常见的多文件拖拽支持的WM_DROPFILES_FUNC,DllCallshell32.dllDragQueryFile 的,窗口也是$WS_EX_ACCEPTFILES,支持多文件,但需要GUI事件模式1,而且无法区分哪个控件上发生的,这在有多个不同的拖放目的地的时候就很难处理。同样拖进窗口就是拖放光标,没有区分控件显示。

下面就来给出既可以判断哪个控件触发的拖动,又可以支持多个文件一次性拖拽进来,能一一处理,还不需要设置GUIOnEventMode为1的AU3源码示例
上个贴回复、评分的人才1、2个,本贴设置成【回复可见】看看是潜水多,还是真没人~~
Independent control multi file drag

WIN11下运行通过,图片是WIN11或win7的系统壁纸,没有的自己换吧
系统文件浏览器下多选文件,然后拖进程序窗口,指向空白处时光标为禁用,指向Input输入框和图片时可放开鼠标完成拖放,效果为输入框显示拖放的全部文件名,并显示最近拖放的控件hWnd,好做区分处理
**** Hidden Message *****




anythinging 发表于 2023-6-4 10:54:14

学习一下,感谢分享

h111666b 发表于 2023-6-4 11:31:15

前排看看,什么操作

yohoboy 发表于 2023-6-4 20:52:34

看看怎麼實現這個功能...

smallan 发表于 2023-6-5 12:05:02

学习一下,感谢分享

ShuoShuRen 发表于 2023-6-6 09:47:16

学习学习~~

blue003 发表于 2023-6-13 17:39:19

不错,谢谢

blue003 发表于 2023-6-13 17:40:25

好好!谢谢!

jinliang1119 发表于 2023-6-28 09:12:52

学习学习。。。。。。。。

怪咖很怪i 发表于 2023-7-13 16:26:56

正需要使用,过来看看

netmaple 发表于 2023-8-26 15:05:03

感谢楼主的分享,学习一下

风过无痕 发表于 2023-10-24 14:06:53

谢谢分享,看看如何实现的

YGYL 发表于 2023-11-7 14:58:24

2023.11.6更新了更完整的(演示)程序

yongge9999 发表于 2023-11-29 22:00:10

学习研究一下
页: [1]
查看完整版本: 2023.11.6更新】【独立控件】分别支持不同的【多文件拖放】WinAPI_DragQueryFileEX